MessageBox()右上方关闭按钮是否有返回值,如果有是什么,和取消一样吗?

以下是一段小程序,如何让它按确定重复出现对话框,按关闭按钮关闭对话框#include<windows.h>intWINAPIWinMain(HINSTANCEhInsta... 以下是一段小程序,如何让它按确定重复出现对话框,按关闭按钮关闭对话框
#include <windows.h>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR szCmdLine, int iCmdShow)

{
while(MessageBox(NULL,TEXT("Hello,Windows XP!"),TEXT("HelloMsg"),MB_OK)==IDOK)
;
return 0;
}
我这代码运行出来不管按确定还是关闭都是循环出现,不知道为什么
展开
 我来答
007lxa
2011-01-23 · 超过22用户采纳过TA的回答
知道答主
回答量:107
采纳率:0%
帮助的人:74.3万
展开全部
MSDN上找到解释了:
If a message box has a Cancel button, the function returns the IDCANCEL value if either the esc key is pressed or the Cancel button is selected. If the message box has no Cancel button, pressing esc has no effect.

如果有取消按钮,返回IDCANCEL 如果没有取消按钮,按关闭 没有效果

Value Meaning
IDABORT Abort button was selected.
IDCANCEL Cancel button was selected.
IDIGNORE Ignore button was selected.
IDNO No button was selected.
IDOK OK button was selected.
IDRETRY Retry button was selected.
IDYES Yes button was selected.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
labikkkk
2011-01-23 · TA获得超过383个赞
知道小有建树答主
回答量:201
采纳率:0%
帮助的人:202万
展开全部
二楼说的对。如果是 按 确定按钮,那么返回 ID_OK。如果是 关闭的话,返回NULL. 一楼的众多ID是按钮 确定 取消 …… 这些按钮的返回消息。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友38c8e98
2011-01-23 · TA获得超过2658个赞
知道小有建树答主
回答量:1131
采纳率:0%
帮助的人:594万
展开全部
经过测试,点关闭返回值等于ID最小按钮的ID值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
029349029
2011-01-23 · TA获得超过258个赞
知道小有建树答主
回答量:225
采纳率:0%
帮助的人:123万
展开全部
你这个代码就是对的啊。确定键返回的是IDOK,而X键返回的就是NULL,你这个代码应该就是符合你的要求的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式