主要是,我在我创建的线程中创建了一个QApplication,然后,根据来自用户的命令(来自cin),我想在线程中创建的QApplication实例上使用回调。 QApllication的创建发生在名为'StartQtThread'的workerthread上,而我的主要功能是获取命令是主线程。
我的问题是我的命令来自主线程,不适用于qapplication。 例如:如果用户输入'z',我无法放大,在我的QApplication中的地图上。公交车因为我在主线上没有任何反应。 我尝试使用我的放大功能,从'StartQtThread'线程,它的工作原理。
尝试从主线程使用'moveToThread(qApp-> thread())'函数,但当前线程没有被更改。
任何人都知道如何改变它?
答案 0 :(得分:1)
thread->moveToThread(obj)
将对象 obj 移动到线程线程。代码moveToThread(qApp->thread())
将主线程的对象移动到另一个线程(这有点奇怪)。 GUI只能在主线程中工作。