QThread 与 MainWidget 通信 问题
设计思路:MainWidget 负责 GUI 更新,BackService 负责后台数据处理,当BackService处理完毕后发出Signal到MainWidget。
MainWIdget收到该Signal执行GUI更新操作,现在的问题是,BackService的Signal正常发出,MainWidget也能执行了Slot但是在执行Slot的时候QT Creator提示
链接代码如下:
MainWidget 构造部分(m_lpBackServicePtr 为 BackService ):
connect(m_lpBackServicePtr,SIGNAL(UpdateWniResGui(QString,QVector<QString>*,CResource*)),this,
SLOT(OnUpdateWniResList(QString,QVector<QString>*,CResource*)),Qt::BlockingQueuedConnection);
在执行OnUpdateWniResList后发生:
异常提示

请问怎么解决这个问题:QT 4.6.1 OS Windows7
MainWIdget收到该Signal执行GUI更新操作,现在的问题是,BackService的Signal正常发出,MainWidget也能执行了Slot但是在执行Slot的时候QT Creator提示
链接代码如下:
MainWidget 构造部分(m_lpBackServicePtr 为 BackService ):
connect(m_lpBackServicePtr,SIGNAL(UpdateWniResGui(QString,QVector<QString>*,CResource*)),this,
SLOT(OnUpdateWniResList(QString,QVector<QString>*,CResource*)),Qt::BlockingQueuedConnection);
在执行OnUpdateWniResList后发生:
异常提示

void MainWindow::OnUpdateWniResList(const QString &spTrace,QVector<QString> *lpvtList,CResource *lpRes)
{
QString szTmp;
QDir tgDirTmp;
DWORD dwRetVal = 0;
CUsualParam tgUsual = m_tgOptionsParam.GetUsual();
if( m_qMainBrowser.document()->lineCount() == MAX_ROWS*10 ) m_qMainBrowser.clear();
m_qMainBrowser.insertPlainText(spTrace);
for(int nIndex = 0;nIndex < lpvtList->count();nIndex++)
{
tgDirTmp = lpRes->GetLocalPath(); // 出现问题行
szTmp.sprintf("%s.jc",lpvtList->at(nIndex) );
if( (!tgDirTmp.exists(lpvtList->at(nIndex))) && (!tgDirTmp.exists(szTmp)) )
{
QTableWidgetItem *lpItem =NULL;
dwRetVal = AppendRow(lpvtList->at(nIndex),0,"Ready",tgDirTmp.currentPath());
JTransmissionItem *lpItemService = new
JTransmissionItem(this,m_tgOptionsParam,*lpRes,lpvtList->at(nIndex),
m_qMainTable.item(dwRetVal,1));
m_tgThreadPool.start(lpItemService);
}
}
}
请问怎么解决这个问题:QT 4.6.1 OS Windows7
...全文
相关推荐
qt5半成品飞机大战小游戏
代码即其资源文件
QTEST基础练习
QT基础练习代码,适合新手学习,结合布局,按钮,模型视图,线程等,通过简单的线程显示数据到界面 QT基础练习代码,适合新手学习,结合布局,按钮,模型视图,线程等,通过简单的线程显示数据到界面
python GUI库图形界面开发之PyQt5线程类QThread详细使用方法
主要介绍了python GUI库图形界面开发之PyQt5线程QThread类详细使用方法,需要的朋友可以参考下
QT间进程通信之共享内存
Qt提供了一种安全的共享内存的实现QSharedMemory,以便在多线程和多进程编程中安全的使用。比如说QQ的聊天的客户端,这里有个个性头象,当点击QQ音乐播放器的时候,启动QQ音乐播放(启动一QQ音乐播放器的进程)这时QQ音乐播放器里也有一个个性头像,这两者间的头像一样,现用共享内存的方法实现。
高校技术转移办公室如何实现科技成果的动态管理与多维分析?.docx
科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。


