[Delphi]MessageBox详解

MessageBox对话框是比较常用的一个信息对话框,其不仅能够定义显示的信息内容、信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对话框信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对框。   
          1、函数原型及参数   
          function MessageBox(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;         //Help       Button   
          3、函数返回值   
          0                                 //对话框建立失败   
          idOk       =       1                   //按确定按钮   
          idCancel       =       2              //按取消按钮   
          idAbout       =       3              //按异常终止按钮   
          idRetry       =       4              //按重试按钮   
          idIgnore       =       5          //按忽略按钮   
          idYes       =       6               //按是按钮   
          idNo       =       7                  //按否按钮     

用法:MessageBox(handle,'内容','标题',MB_YESNOCANCEL     OR     MB_ICONQUESTION)  

 

{ 显示图标 }
MessageBox(Handle, PChar(
'消息文字'), PChar('对话框标题'), MB_ICONWARNING or MB_OK);

{ 不显图标 }
MessageBox(Handle, PChar(
'消息文字'), PChar('对话框标题'), MB_OK);

{ 默认按钮 }
MessageBox(Handle, PChar(
'消息文字'), PChar('对话框标题'), MB_YESNO or MB_DEFBUTTON2);

{ 复合用法 }
MessageBox(Handle, PChar(Self.Caption 
+#13#10 + '消息文字'), PChar('对话框标题'), MB_OK);

{ 判断返回值 }
if MessageBox(Handle, PChar('消息文字'), PChar('对话框标题'), 
  MB_ICONQUESTION 
or MB_OKCANCEL or MB_DEFBUTTON1) = IDOK then
begin
  
// Add your code here
end;

case MessageBox(Handle, PChar('消息文字'), PChar('对话框标题'), 
  MB_ICONQUESTION 
or MB_OKCANCEL or MB_DEFBUTTON1) of
  IDOK: 
// Add your code here
  IDCANCEL: 
// Add your code here
  
end;

case MessageBox(Handle, PChar('消息文字'), PChar('对话框标题'), 
  MB_ICONQUESTION 
or MB_ABORTRETRYIGNORE or MB_DEFBUTTON1) of
  IDABORT: 
// Add your code here
  IDRETRY: 
// Add your code here
  IDIGNORE: 
// Add your code here
  
end;

case MessageBox(Handle, PChar('消息文字'), PChar('对话框标题'), 
  MB_ICONQUESTION 
or MB_YESNO or MB_DEFBUTTON1) of
  IDYES: 
// Add your code here
  IDNO: 
// Add your code here
  
end;

case MessageBox(Handle, PChar('消息文字'), PChar('对话框标题'), 
  MB_ICONQUESTION 
or MB_RETRYCANCEL or MB_DEFBUTTON1) of
  IDRETRY: 
// Add your code here
  IDCANCEL: 
// Add your code here
  
end;

case MessageBox(Handle, PChar('消息文字'), PChar('对话框标题'), 
  MB_ICONQUESTION 
or MB_YESNOCANCEL or MB_DEFBUTTON1) of
  IDYES: 
// Add your code here
  IDNO: 
// Add your code here
  IDCANCEL: 
// Add your code here
  
end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值