前几天,用QTest去做GUI测试时遇到一个模拟关闭模态对话框的情况.
直接在主线程中直接关闭对话框是不可能的,因为后面的代码被阻塞了,这个时候想到了使用子线程的方式去做.
Qt中创建子线程的方式比较有趣:先创建一个继承自QObject的WorkerThread对象,然后去move到QThread对象上,这样WorkerThread对象就有了子线程的特征了.接下来可以通过信号与槽的方式来实现子线程一启动就去执行槽函数.
具体的代码如下:
前几天,用QTest去做GUI测试时遇到一个模拟关闭模态对话框的情况.
直接在主线程中直接关闭对话框是不可能的,因为后面的代码被阻塞了,这个时候想到了使用子线程的方式去做.
Qt中创建子线程的方式比较有趣:先创建一个继承自QObject的WorkerThread对象,然后去move到QThread对象上,这样WorkerThread对象就有了子线程的特征了.接下来可以通过信号与槽的方式来实现子线程一启动就去执行槽函数.
具体的代码如下: