当前位置: 代码迷 >> QT开发 >> QT中非GUI 线程不能实例化一个窗口,
  详细解决方案

QT中非GUI 线程不能实例化一个窗口,

热度:100   发布时间:2016-04-25 04:41:32.0
QT中非GUI 线程不能实例化一个窗口,高手请进!
问题是这样的, 我在写程序的时候遇到了这么一个错误信息 "QPixmap: It is not safe to use pixmaps outside the GUI thread
<unknown>: Fatal IO error 0 (成功) on X server :0.0." , 我猜测了一下大概是因为我在非GUI 的线程里边做了GUI的相关操作,所以提示出错, 那怎么处理阿....请看我下面的小段代码:

SendFileThread()这个函数是一个独立的函数,是一个线程函数....然后我执行的时候就遇到了上面的报错了!不知为何阿!咋办!

C/C++ code
void *SendFileThead(void *pvDialog){   // 实例化文件传输的对话框    CDialogSendFile *dialogSendFile = new CDialogSendFile(NULL);    dialogSendFile->show();    while(1);}


------解决方案--------------------
建立一个信号糟,在SendFileThead函数发一个信号,通知界面线程,然后再在显示出这个Dialog
  相关解决方案