如何从C++启动 QML 动画
How to fire off QML-animation from C++
我通过中介类连接了C++和QML,并使所有内容在两个方向上工作,但这让我感到困惑。
这就是我连接调解器类的方式:
// Initialize Mediator between QML and C++
QmlCppMediator m_qmlCppMediator;
QDeclarativeContext *context = viewer.rootContext();
context->setContextProperty("cppInterface", &m_qmlCppMediator);
如何从C++内部触发普通的属性动画?
好的,
我已经可以自己回答这个问题了。
我选择了这里描述的方法 http://qt-project.org/doc/qt-4.8/qdeclarativeanimation.html
我将尝试动画化的对象的"状态"绑定到C++接口中的Q_PROPERTY。不同的状态链接到过渡(在QML中),这些过渡对对象进行动画处理。
一种简单的方法是在QML文件本身中定义一个JavaScript函数,如下所示:
function startAnimation() {
animationID.running = true;
}
现在从C++调用此代码,简单!
相关文章:
- 在执行其他功能的同时播放动画(LED矩阵和Arduino/ESP8266)
- 从C++实例化QML
- 使用CMake创建QML插件
- QT通过C++添加映射QML项目
- 如何在没有信号的情况下从C++执行QML插槽
- QML按钮点击功能执行顺序
- QML:修改在不同QML文件(而非main.QML)中定义的子对象的属性
- 建议在运行时将带有类实例的列表从c++导入qml
- Qt Quick-如何仅从c++代码与qml属性交互
- 如何将带有自定义对象的容器从C++传递到QML
- 使用 GLUT 使用键停止动画?
- QML 使用带有参数C++函数
- QML:设置动画图像源,而不加载资源中的文件
- 如何在C++中的值更改时触发动画 qml
- 单击按钮后对QML矩形的颜色设置动画
- Qml在无帧QQuickView(QtQuick2)中的动画上闪烁
- 触发特性更改的QML动画
- QML如何对属性的每次更改进行动画处理?(只有最后一个更改动画可见)
- QML动画完成后调用c++函数
- 如何从C++启动 QML 动画