Qt状态机QStateMachine使用
来源:互联网 发布:2017网络自制综艺现状 编辑:程序博客网 时间:2024/04/30 11:42
建立一个空的Qt工程添加main.cpp
#include <QApplication>#include <QPushButton>#include <QState>#include <QStateMachine>int main(int argc, char* argv[]){ QApplication app(argc, argv); QPushButton button("state machine"); QStateMachine machine; //新建三个状态机 QState* s1 = new QState(&machine); QState* s2 = new QState(&machine); QState* s3 = new QState(&machine); //设定三个状态分别控制button在不同的位置显示 s1->assignProperty(&button, "geometry", QRect(100, 100, 100, 50)); s2->assignProperty(&button, "geometry", QRect(300, 100, 100, 50)); s3->assignProperty(&button, "geometry", QRect(200, 200, 100, 50)); //关联三个状态间的切换 s1->addTransition(&button, SIGNAL(clicked()), s2); s2->addTransition(&button, SIGNAL(clicked()), s3); s3->addTransition(&button, SIGNAL(clicked()), s1); // entred为进入 exited离开 还可以有finished propertiesAssigned destroyed //QObject::connect(s3, SIGNAL(entered()), &button, SLOT(showMinimized())); //设置起始状态 machine.setInitialState(s1); machine.start(); button.show(); return app.exec();}
运行后,每点击一次按钮将移至下一个位置
0 0
- Qt状态机QStateMachine使用
- QT状态机QStatemachine
- QT状态机的使用
- qt 状态机
- QT状态机
- QT状态机
- QT状态机框架
- qt状态机的实现
- Qt 状态机框架学习
- qt状态机框架
- Qt状态机学习1
- Qt状态机学习2
- Qt状态机学习3
- Qt状态机学习4
- Qt状态机框架
- QT状态机框架
- Qt Qml状态机框架
- qt 状态机弹跳效果
- 贪心算法3之1001
- Scalaz(35)- Free :运算-Trampoline,say NO to StackOverflowError
- 由火车退票制度改革想到的民生问题
- 【Tyvj1185】【codevs1296】【BZOJ1588】营业额统计,Splay练习
- 贪心算法4之1008
- Qt状态机QStateMachine使用
- poj1637
- [BZOJ 1061][Noi2008]志愿者招募
- BZOJ1529ska Piggy banks
- 集群监控--监控指标
- OpenGL, OpenGL ES, WebGL, GLSL, GLSL ES APIs 列表
- 删除顺序表指定元素
- 用蚕茧表示法写简洁实用的接口文档
- 判断当前界面是否是桌面