首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

QT线程中动态在一个窗口上的QWidget创造QPushbutton不行么

2013-08-29 
QT线程中动态在一个窗口上的QWidget创建QPushbutton不行么?报QObject::setParent: Canont set parent ,new

QT线程中动态在一个窗口上的QWidget创建QPushbutton不行么?
报QObject::setParent: Canont set parent ,new parent is in a different thread.

用pthread_create 创建一个线程
在线程内使用QPushButton *pt=new QPushButton()
然后报那个错。
[解决办法]
你新建的线程里面的控件肯定不能和另外一个线程的控件有父子关系,因为你没有办法保证两个线程的生命周期,Qt也不能让你这么做,你为什么不新建好控件之后,在新的线程里面show不就行了
[解决办法]
pthread_create 创建的是不是非GUI线程啊。QPushButton 是GUI类,只能在GUI线程里创建
QPushButton *pt=new QPushButton()就失败了。可以跟踪一下Qt源码

热点排行