• 6321阅读
  • 8回复

[提问]qt在别的线程,不能操作界面。是不是需要使用moveToThread?有没有例子,借鉴一下? [复制链接]

上一主题 下一主题
离线qdxianxing
 
只看楼主 倒序阅读 楼主  发表于: 2012-05-01
如题。
离线ssa8023ddy
只看该作者 1楼 发表于: 2012-05-01
你想在子线程里满足一定条件才画界面么?
离线qdxianxing
只看该作者 2楼 发表于: 2012-05-01
引用第1楼ssa8023ddy于2012-05-01 16:29发表的  :
你想在子线程里满足一定条件才画界面么?

是的。子线程要修改界面,我记得C#是用委托的。

不知道QT里可以用什么方法。
离线ssa8023ddy
只看该作者 3楼 发表于: 2012-05-01
回 2楼(qdxianxing) 的帖子
可以用事件可槽,在线程里需要画界面时发送个信号,在界面里弄个槽接受这个信号然后开始画,并且信号和槽里可以传递参数的
离线ssa8023ddy
只看该作者 4楼 发表于: 2012-05-01
回 3楼(ssa8023ddy) 的帖子
错别字了,事件和槽, 不好意思。。
离线qdxianxing
只看该作者 5楼 发表于: 2012-05-01
Re:回 2楼(qdxianxing) 的帖子
引用第3楼ssa8023ddy于2012-05-01 16:53发表的 回 2楼(qdxianxing) 的帖子 :
可以用事件可槽,在线程里需要画界面时发送个信号,在界面里弄个槽接受这个信号然后开始画,并且信号和槽里可以传递参数的

有道理,我尝试看看。
离线roywillow

只看该作者 6楼 发表于: 2012-05-01
印象中子线程操作UI只能用信号和槽……?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线benbenmajia

只看该作者 7楼 发表于: 2012-05-02
目前QT中多线程之间是可以字节用信号槽来进行通信的
安然.....
离线无涯之子

只看该作者 8楼 发表于: 2012-05-02
比如写一个函数
showform()
{
    emit a();

}
connect(this,SIGNAL(a()),this,SLOT(draw()));


draw() 函数在写你要的东西
快速回复
限100 字节
 
上一个 下一个