MessageBox函数的返回值

更新时间:2023-05-17 12:27:50 阅读: 评论:0

MessageBox函数的返回值
你要的爱吉他谱MessageBox()函数的常⽤返回值
IDABORT:Abort 按钮被选中。
IDCANCEL:Cancel按钮被选中。
IDIGNORE:Ignore按钮被选中。
IDNO:NO按钮被选中。
IDOK:OK按钮被选中。
IDRETRY:RETRY按钮被选中。
IDYES:YES按钮被选中。
附上原书MessageBox对第四个参数的扩展描述
MessageBox的第四个参数可以是在WINUSER.H中定义的⼀组以前缀MB_开始的常数的组合。您可从第⼀组中选择⼀个常数指出希望在对话框中显⽰的按钮:
#define    MB_OK                                    0x00000000L
#define    MB_OKCANCEL                                0x00000001L
#define    MB_ABORTRETRYIGNORE                      0x00000002L数学的应用
#define    MB_YESNOCANCEL                          0x00000003L
#define    MB_YESNO                                  0x00000004L
#define    MB_RETRYCANCEL                            0x00000005L
如果在HELLOMSG中将第四个参数设置为0,则仅显⽰「OK」按钮。可以使⽤C语⾔的OR(|)操作符号将上⾯显⽰的⼀个常数与代表内定按钮的常数组合:超新学习通
#define    MB_DEFBUTTON1                              0x00000000L
#define    MB_DEFBUTTON2                              0x00000100L
#define    MB_DEFBUTTON3                              0x00000200L
嫖娼卖淫
#define    MB_DEFBUTTON4                              0x00000300L
还可以使⽤⼀个常数指出消息框中图⽰的外观:张棪琰演员
#define    MB_ICONHAND                                    0x00000010L
#define    MB_ICONQUESTION                          0x00000020L
#define    MB_ICONEXCLAMATION              0x00000030L
#define    MB_ICONASTERISK                    0x00000040L
这些图⽰中的某些有替代名称:
#define    MB_ICONWARNING          MB_ICONEXCLAMATION
#define    MB_ICONERROR            MB_ICONHAND
#define    MB_ICONINFORMATION    MB_ICONASTERISK
#define    MB_ICONSTOP                          MB_ICONHAND
虽然只有少数其它MB_常数,但您可以⾃⼰参考表头⽂件或 / Platform SDK / Ur Interface Services / Windowing / DialogBoxes/ Dialog Box Reference / Dialog Box Functions⾥的⽂件。
学写windows程序。之前⽼师就推荐过《windows程序设计》,⾃⼰也从图书馆借来读过,总感觉看不懂。经过⼀年多的积累,重读这本书,纪录下历程作为积累。
我个⼈不是计算机专业的,作为⼀个业余爱好,不⾜之处请多指教。
MessageBox的函数原型为:
钢铁是怎样炼成的阅读感想>新耳机如何煲机int WINAPIMessageBox(HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);
在 windows程序设计 中
Charles Petzold 所举实例如下
#include<windows.h>
int WINAPIWinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
PSTR szCmdLine, intiCmdShow)
{
MessageBox(NULL, TEXT ("Hello, Windows 98!"), TEXT ("HelloMsg"), 0);
return 0 ;
}
运⾏后结果如图所⽰———⼀个简单的消息框和⼀个确定按钮。点击确定后直接退出程序了。没有什么功能,根据以前学过的vb和delphi的经验,任何按钮下都应该有可以实现某种特殊功能。
于是百度⼀下相关,找到类似的例⼦,我把它改成这样
UINT nRet =MessageBox(NULL, L"确定要删除此记录?", L"提⽰", MB_OKCANCEL |MB_ICONERROR);
if (nRet == IDOK)
{
//MessageBox(NULL,TEXT("123"), TEXT("OK"), NULL);
//功能1
}
el if (nRet == IDCANCEL)
{
//MessageBox(NULL, TEXT("11"),TEXT("cancel"), NULL);
//功能2
}
长蒿return 0 ;
运⾏结果如下
这⾥我们定义了⼀个UINT (MessageBox函数原型的最后⼀个参数)类型名为nRet 的参数以接收⽤户选择的按钮;语句if (nRet == IDOK)中IDOK和IDCANCEL⼀样都是常数。
按下确定后执⾏了
MessageBox(NULL,TEXT("123"), TEXT("OK"), NULL);
实现了我们想要的功能.
/
修改按钮⽂本(⼀般⽤于国际化)
HHOOK  hHook;
LRESULT  __stdcall  CBTHookProc(  long  nCode,WPARAM  wParam,LPARAM  lParam)
{
if  (nCode==HCBT_ACTIVATE)
{
SetDlgItemText((HWND)wParam,IDYES,"&Yes");
SetDlgItemText((HWND)wParam,IDNO  ,"&No");
SetDlgItemText((HWND)wParam,IDOK,"&OK");
SetDlgItemText((HWND)wParam,IDCANCEL,"&Cancel");
UnhookWindowsHookEx(hHook);
}
return  0;
}
使⽤⽅法:在调⽤MessageBox前加⼊以下函数
hHook=SetWindowsHookEx(WH_CBT,(HOOKPROC)CBTHookProc,AfxGetInstanceHandle(),NULL);
/

本文发布于:2023-05-17 12:27:50,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/89/908093.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:按钮   常数   参数   确定   函数   相关   指出   作为
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图