24小时热门版块排行榜    

Znn3bq.jpeg
查看: 775  |  回复: 1

zyj8119

木虫 (著名写手)

[交流] 【转帖】Delphi中MessageBox用法 已有1人参与

转载于网络

在delphi中经常要用到一个提示对话框,根据用户选择执行不同的命令,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)图标常量免费资源收集网(http://www.freezq.cn)
   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                 //按否按钮

应用实例:
Application.MessageBox('你确定此操作吗?','询问',MB_OK);//只有一个确定按钮
MessageBox(0,'你确定此操作吗?','询问',MB_OK); //只有一个确定按钮
MessageBox(0,'你确定此操作吗?','询问',1); //确定取消(如果不带图标,也可以用数字)
MessageBox(0,'你确定此操作吗?','询问',MB_OKCANCEL);//确定取消二个按钮
MessageBox(0,'你确定此操作吗?','询问',MB_OKCANCEL+MB_ICONQUESTION);//确定取消,带?号图标
MessageBox(0,'你确定此操作吗?','询问',MB_OKCANCEL+MB_ICONQUESTION+MB_DEFBUTTON2);//确定取消,带?号图标,并把第二个按钮“取消”设为默认按钮!

如果想判断用户选择了那个按钮可以这样
var
  x:integer;
begin
x:=MessageBox(0,'你确定此操作吗?','询问',MB_OKCANCEL);
end;
判断时可以是if x=1 then ..或if x=idok then...
回复此楼
好好学习,天天向上。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

anyonghui

银虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
有了cnPack IDE   这个利器,
      MessageBox函数,就不用那么复杂的去记忆用法了。
2楼2013-12-10 11:03:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zyj8119 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 河北省自然科学基金 +5 Peterchao 2026-05-18 8/400 2026-05-24 11:58 by 晓晓爱翠翠
[基金申请] 西安交大新媒学院副院长用撤稿论文结题 +3 bjvtcliu 2026-05-24 5/250 2026-05-24 10:16 by kudofaye
[教师之家] 某211大学教师把个人教师官方主页改成:我跑了我跑了我跑了!官宣跑路! +4 zju2000 2026-05-21 5/250 2026-05-24 09:35 by songwz
[考博] 26/27申博自荐 10+4 ZXW0202 2026-05-22 9/450 2026-05-24 08:47 by bjvtcliu
[硕博家园] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 hvkbtfonbv 2026-05-23 3/150 2026-05-24 08:01 by 9ps9vgkqva
[硕博家园] 售SCI一区T0P文章,我:8.O.5.5.1.O.5.4,科目齐全,可+急 +3 pmo95bazuy 2026-05-23 7/350 2026-05-24 06:35 by fpo5ljpv91
[基金申请] 揭秘青基评审内幕:几个A才能顺利中标 +3 国自然国社科中 2026-05-23 4/200 2026-05-23 15:37 by 2000zf36392
[基金申请] 青B发送上会通知了吗 +5 chemBioBro 2026-05-22 7/350 2026-05-23 12:35 by zhuifengzhy
[考博] 博士申请 +3 焦晓明 2026-05-21 3/150 2026-05-23 11:26 by mlc840311
[论文投稿] 投稿求助,期刊 +4 希冀,有书读 2026-05-20 8/400 2026-05-22 10:16 by 希冀,有书读
[文学芳草园] 献血感触 +7 呀呀好傻 2026-05-19 13/650 2026-05-21 20:15 by 呀呀好傻
[基金申请] 面上本子正文33页,违规吗?会被低分嘛? +14 1234567wang 2026-05-17 16/800 2026-05-21 17:58 by 脆脆的饼干
[基金申请] 国自然评分 +4 无名者登山 2026-05-20 5/250 2026-05-21 16:35 by swuq
[基金申请] 国自然上会要求 +7 无名者登山 2026-05-18 11/550 2026-05-21 15:50 by draco1987
[基金申请] 提交了我也来说说感想 +9 fummck 2026-05-20 10/500 2026-05-21 14:17 by draco1987
[基金申请] 评审有感 +15 popular289 2026-05-18 26/1300 2026-05-21 10:35 by 西葫芦炒鸡蛋
[有机交流] 反应很差,大量原料没有反应 5+3 Mr.Zot 2026-05-19 8/400 2026-05-20 22:19 by Equinoxhua
[考博] 如果工作了想读博,可以边工作边读全日制嘛? 30+3 铁达火车 2026-05-18 5/250 2026-05-20 09:33 by tfang
[考博] 博士申请 +5 星…… 2026-05-18 6/300 2026-05-18 23:49 by 糊糊涂涂好
[硕博家园] 我在等一个没有答案的答案 +3 Love_MH 2026-05-17 3/150 2026-05-18 02:22 by 竹林孤影
信息提示
请填处理意见