//MS.MSDNQTR.2005JUL.1033/vclib/html/vc364f4.gif"border=0>MB_ICONASTERISKandMB_ICONINFORMATION
*************************************************************以上内容引自msdn***************************************************************
由于这种形式的MessageBox使用起来更方便,所以更多时候程序员使用的是这一种形式的消息框
下面的例子可以让我们对比两种函数的用法,两行代码的功能都是显示一个消息框,内容为“示例用法”
:
:
MessageBox(NULL,"示例用法","demo",MB_OK);
MessageBox("示例用法");//采用了一些C++的语法特性使用消息框用起来更顺手
VC中MessageBox的常见用法2009-10-0820:
31一、关于MessageBox
消息框是个很常用的控件,属性比较多,本文列出了它的一些常用方法,及指出了它的一些应用场合。
1.MessageBox("这是一个最简单的消息框!
");
2.MessageBox("这是一个有标题的消息框!
","标题");
3.MessageBox("这是一个确定取消的消息框!
","标题",MB_OKCANCEL);
4.MessageBox("这是一个警告的消息框!
","标题",MB_ICONEXCLAMATION);
5.MessageBox("这是一个两种属性的消息框!
","标题",MB_ICONEXCLAMATION|MB_OKCANCEL);
6.if(MessageBox("一种常用的应用","标题",MB_ICONEXCLAMATION|MB_OKCANCEL)==IDCANCEL)
return;
附其它常用属性:
系统默认图标,可在消息框上显示
X错误MB_ICONHAND,MB_ICONSTOP,andMB_ICONERROR
?
询问MB_ICONQUESTION
!
警告MB_ICONEXCLAMATIONandMB_ICONWARNING
i信息MB_ICONASTERISKandMB_ICONINFORMATION
按钮的形式
MB_OK默认
MB_OKCANCEL确定取消
MB_YESNO是否
MB_YESNOCANCEL是否取消
返回值
IDCANCEL取消被选
IDNO否被选
IDOK确定被选
IDYES是被选
注意!
!
!
:
以上消息框的用法是在CWnd的子类中的应用,如果不是,则要MessageBox(NULL,"ddd","ddd",MB_OK);或MessageBox(hWnd,"ddd","ddd",MB_OK);hWnd为某窗口的句柄,或者直接用AfxMessageBox。
MessageBox对话框是比较常用的一个信息对话框,其不仅能够定义显示的信息内容、信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对话框信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对框。
1、函数原型及参数
functionMessageBox(hWnd:
HWND;Text,Caption:
PChar;Type:
Word):
Integer;
hWnd:
对话框父窗口句柄,对话框显示在Delphi窗体内,可使用窗体的Handle属性,否则可用0,使其直接作为桌面窗口的子窗口。
Text:
欲显示的信息字符串。
Caption:
对话框标题字符串。
Type:
对话框类型常量。
该函数的返回值为整数,用于对话框按钮的识别。
2、类型常量
对话框的类型常量可由按钮组合、缺省按钮、显示图标、运行模式四种常量组合而成。
(1)按钮组合常量
MB_OK=$00000000; //一个确定按钮
MB_OKCANCEL=$00000001; //一个确定按钮,一个取消按钮
MB_ABORTRETRYIGNORE=$00000002; //一个异常终止按钮,一个重试按钮,一个忽略按钮
MB_YESNOCANCEL=$00000003; //一个是按钮,一个否按钮,一个取消按钮
MB_YESNO=$00000004; //一个是按钮,一个否按钮
MB_RETRYCANCEL=$00000005; //一个重试按钮,一个取消按钮
(2)缺省按钮常量
MB_DEFBUTTON1=$00000000; //第一个按钮为缺省按钮
MB_DEFBUTTON2=$00000100; //第二个按钮为缺省按钮
MB_DEFBUTTON3=$00000200; //第三个按钮为缺省按钮
MB_DEFBUTTON4=$00000300; //第四个按钮为缺省按钮
(3)图标常量
MB_ICONHAND=$00000010; //“×”号图标
MB_ICONQUESTION=$00000020; //“?
”号图标
MB_ICONEXCLAMATION=$00000030; //“!
”号图标
MB_ICONASTERISK=$00000040; //“i”图标
MB_USERICON=$00000080; //用户图标
MB_ICONWARNING=MB_ICONEXCLAMATION; //“!
”号图标
MB_ICONERROR=MB_ICONHAND; //“×”号图标
MB_ICONINFORMATION=MB_ICONASTERISK; //“i”图标
MB_ICONSTOP=MB_ICONHAND; //“×”号图标
(4)运行模式常量
MB_APPLMODAL=$00000000; //应用程序模式,在未结束对话框前也能切换到另一应用程序
MB_SYSTEMMODAL=$00001000; //系统模式,必须结束对话框后,才能做其他操作
MB_TASKMODAL=$00002000; //任务模式,在未结束对话框前也能切换到另一应用程序
MB_HELP=$00004000; //HelpButton
3、函数返回值
0 //对话框建立失败
IDOK=1 //按确定按钮
IDCANCEL=2 //按取消按钮
IDABOUT=3 //按异常终止按钮
IDRETRY=4 //按重试按钮
IDIGNORE=5 //按忽略按钮
IDYES=6 //按是按钮
IDNO=7 //按否按钮
二、在MessageBox中显示变量的值
CStringstring;
string.format("%d%s",m_age,m_address);//将变量组装到字符串中
MessageBox(string,"消息框标题",消息框类型);
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
【函数】<整型>MessageBox(<字符串>Text,<字符串>Title,<整型>nType);
【函数说明】弹出一个消息框。
【语法】
参数:
Text<字符串>,消息框的正文;
Title<字符串>,消息框的标题;
nType<整型>,消息框的类型。
返回值:
<整型>,用户在消息框上点击关闭时的选择的按钮。
【说明】
其中nType对应的对话框如下表所示:
0:
确定
1:
确定,取消
2:
终止,重试,忽略
3:
是,否,取消
4:
是,否
5:
重试,取消
6:
取消,再试一次,继续(注:
WindowsNT下不支持)
返回值对应的值如下:
1:
确定
2:
取消
3:
终止
4:
重试
5:
忽略
6:
是
7:
否
10:
再试一次
应用程序中的提示信息处理程序是非常出重要的部分,用户要知道他输入的资料到底正不正确
,或者是应用程序有一些提示信息要告诉用户,都必须通过提示信息处理程序来显示适当的信息,
让用户了解下一步该如何配置。
提示信息有很多种类,包括警告,错误,提示,确认,重试等。
不
同种类的提示信息框适合用在各种不同的情况。
在C++Builder中开发提示信息框只须调用MessageBox这个信息提示框函数就行,下面就是这个
函数说明:
int__fastcallMessageBox(constchar*Text,//提示信息框的内容
constchar*Caption,//提示信息框的标题
intFlags);//提示信息框的类别
参数Flags的值是用来标志提示信息框的类别的,下面是一些常用的类别:
参数值样式意义
MB_ICONWARNING含图标、固定按钮警告信息框
MB_ICONQUESTION含图标、固定按钮疑问信息框
MB_IConERROR含图标、固定按钮错误信息框
MB_ICONASTERISK含图标、固定按钮提示信息框
MB_HELP不含图标、可改变按钮说明信息框
MB_OK不含图标、可改变按钮提示信息框
MB_OKCANCEL不含图标、可改变按钮确认信息框
MB_RETRYCANCEL不含图标、可改变按钮重试信息框
MB_YESNO不含图标、可改变按钮是否信息框
MB_YESNOCANCEL不含图标、可改变按钮是否取消信息框
从上表可以看出来,提示信息框的类别可以分成含图标和不含图标,含图标的意思就是指提示
信息框上会有代表意义的图形,不过这类型的提示信息框的按钮都是固定的,都是【确定】按钮,
不能增加也不能省略;不含图标的提示信息框,虽然没有对应的图形显示在提示信息框上,可是你
却可以在这种类型的提示信息框内,加入各种组合的按钮,用于各种不同的情况。
MessageBox函数会返回一个整数值,这个整数值代表用户刚刚点击提示信息框上的哪个按钮,每个
返回值的代表意义在下表:
返回值数值意义
IDOK1确定
IDCANCEL2取消
IDABORT3中断
IDRETRY4重试
IDIGNORE5忽略
IDYES6是
IDNO7否
下面是提示信息框的示范程序:
1.警告信息框
Application->MessageBox("警告信息框","警告信息框",MB_ICONWARNING);
2.疑问信息框
Application->MessageBox("疑问信息框","疑问信息框",MB_ICONQUESTION);
3.错误提示框
Application->MessageBox("错误信息框","错误信息框",MB_IConERROR);
4.提示信息框
Application->MessageBox("提示信息框","提示信息框",MB_ICONASTERISK);
5.说明信息框
Appl