2 juncaijuncai juncaijuncai 于 2016.04.27 11:10 提问

MessageBox阻止程序进行 10C
while (nSize > 1)
{
    lRet = m_keyCtrl.CheckSZCAKey(&nSize);
//  SetTimer(2, 1000, NULL);    
    CWnd::MessageBox(_T("123")); 

// AfxMessageBox(_T("123"));
// MessageBox(_T("123"));
// MessageBox(_T("检测到多个深圳CA的USBKEY, \n 为避免意外, 建议您拔掉多余的USBKEY, 重新开始升级."), _T("询问"), MB_ICONQUESTION);

}
第二次进入循环体内执行到 Messagebox的时候程序就停滞了,怎样处理,一定要自绘messagebox吗?

3个回答

oyljerry
oyljerry   Ds   Rxr 2016.04.27 13:00

MessageBox会阻塞消息循环,不然你就使用 非模态对话框

webcq
webcq   2016.04.28 09:17

MessageBox消息对话框就是用于弹出需要用户立即处理的消息,以便与用户进行实时交互而使用的,所以采用了模态对话框,需要中断程序运行。如果不需要用户立即处理(不需要中断程序执行),可采用日志的方式记录消息,事后用户可通过查看日志来了解程序的执行情况。

lboych
lboych   2016.05.02 09:46

MessageBox消息对话框需要点击取消或者确认的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!