0

我通过一个中介类连接了 C++ 和 QML,并且一切都在两个方向上工作,但这让我感到困惑。

这就是我连接中介类的方式:

// Initialize Mediator between QML and C++
QmlCppMediator m_qmlCppMediator;
QDeclarativeContext *context = viewer.rootContext();
context->setContextProperty("cppInterface", &m_qmlCppMediator);

如何从 C++ 中触发普通的属性动画?

4

2 回答 2

1

好的,我已经可以自己回答了。

我选择了这里描述的方法http://qt-project.org/doc/qt-4.8/qdeclarativeanimation.html

我将尝试制作动画的对象的“状态”绑定到 C++ 接口中的 Q_PROPERTY。不同的状态与对对象进行动画处理的转换(在 QML 中)相关联。

于 2011-05-22T12:19:12.227 回答
0

一个简单的方法是在 QML 文件本身中定义一个 JavaScript 函数,如下:

function startAnimation() {
 animationID.running = true;
}

现在从 C++ 调用这段代码,很简单!

于 2011-11-24T17:52:51.627 回答