请问MessageBox能不能等待OK键确认才继续??

pppguest3962 2010-02-23 09:29:46
如果在一个地方弹出了MessageBox,那么程序不会等待OK确认,就继续往下运行了,请问怎么做一个不确定就不往下运行的MessageBox?
...全文
636 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
yhp1888 2010-02-23
  • 打赏
  • 举报
回复
引用楼主 pppguest3962 的回复:
如果在一个地方弹出了MessageBox,那么程序不会等待OK确认,就继续往下运行了,请问怎么做一个不确定就不往下运行的MessageBox?


要实现这样的功能,要楼主自己建立一个非模式对话框,防MessageBox界面。

QQ GAME中,
你加入时没有位置了,出个非模式对话框,但你可以继续点击加入;
你加入时对主嫌你分数低了,出个模式对话框,你不可以继续点击加入;
TANG_XIAO_BIN 2010-02-23
  • 打赏
  • 举报
回复
用CToolTip吧,或者用非模式对话画框!
vann1982 2010-02-23
  • 打赏
  • 举报
回复
在 onpaint之类的地方弹出的吧?
gamezealot 2010-02-23
  • 打赏
  • 举报
回复
我觉得这个文章说的很好,可以参考下:
http://stackoverflow.com/questions/1256963/if-messagebox-related-are-synchronous-why-doesnt-my-message-loop-freeze
看来是我之前理解错误,MessageBox不会中断别的消息的执行。只是会自己创建一个窗口,进入这个窗口的消息循环,等待用户响应并做对应的处理,直到返回。
aa3000 2010-02-23
  • 打赏
  • 举报
回复
LZ在哪里弹出 MessageBox ?
Eleven 2010-02-23
  • 打赏
  • 举报
回复
你在线程中MessageBox的吗?
gamezealot 2010-02-23
  • 打赏
  • 举报
回复
MessageBox应该是模式对话框,会接管当前线程的UI消息循环。楼主,你描述一下你的环境,再帖上代码吧,这样大家可以针对问题详细分析了。
ls2141 2010-02-23
  • 打赏
  • 举报
回复
。。。。。。。。。。。。。。。。。。。。。
WizardK 2010-02-23
  • 打赏
  • 举报
回复
你使用MESSAGEBOX难道是UI非阻塞的??
WizardK 2010-02-23
  • 打赏
  • 举报
回复
MESSAGEBOX和AFXMESSAGEBOX都是只阻塞UI输入而已,没有阻塞消息循环
gamezealot 2010-02-23
  • 打赏
  • 举报
回复
MessageBox本来就是中断程序的,没有点OK,MessageBox是不会返回的,谈何继续,楼主贴下你的代码,大家可以帮你看看问题所在。
SuperLampard 2010-02-23
  • 打赏
  • 举报
回复
if( MessageBox("确定吗?", "提示", MB_YESNO)== IDYES)
{

}
else
{
//我错了;
}
fzaifei 2010-02-23
  • 打赏
  • 举报
回复
MESSAGEBOX弹出后,接管了消息循环了

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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