VS2010 Ribbon之状态栏问题

相门三少 2018-12-18 03:21:13
我在Mainframe中定义了一个函数,用来更新状态信息

void CMainFrame::UpdateStatusInfo(int mIndex, char* strText)
{
CMFCRibbonBaseElement *pElement;
//pFrame->m_wndStatusBar.GetElement(0)->SetText(info);
pElement = m_wndStatusBar.GetElement(mIndex);
if(!pElement)
{
MessageBox("NULL Pointer");
return;
}
pElement->SetText(strText);
pElement->Redraw();
}

然后在一个线程中去调用这个函数
CMainFrame *pMain=(CMainFrame *)AfxGetApp()->m_pMainWnd;
pMain->UpdateStatusInfo(0,“testing”);

然后我发现用Debug版本运行会出错,Release版本就一切正常。
...全文
619 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
相门三少 2019-08-09
  • 打赏
  • 举报
回复
结贴了,最后只能按4楼说的,使用发消息的方式处理
vcf_reader 2019-03-26
  • 打赏
  • 举报
回复
“Debug版本运行会出错,Release版本就一切正常”
出现这个情况通常是全局句柄释放的问题
schlafenhamster 2019-01-09
  • 打赏
  • 举报
回复
CMFCRibbonBaseElement *pElement=0;
Eleven 2019-01-09
  • 打赏
  • 举报
回复
在线程函数中更新UI的话,最好还是发送一个自定义消息到UI线程中,在UI线程的消息响应函数中去更新UI控件信息。
相门三少 2019-01-08
  • 打赏
  • 举报
回复
谁能给点建设性的建议?要如何调试这个问题?
相门三少 2018-12-25
  • 打赏
  • 举报
回复
引用 1 楼 哇哈哈哈哈哈哈哈: 的回复:
Release版本会进行优化
应该有其它解决办法吧?
  • 打赏
  • 举报
回复
Release版本会进行优化

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧