Delphi : Application.MessageBox

Application.MessageBox TApplication 的成员函数,宣告如下:
function TApplication.MessageBox(const Text, Caption: PChar; Flags: Longint): Integer;

自变量:
  1. Text
:要显示的讯息
  2. Caption
:讯息窗口的标题列文字
  3. Flags
:讯息旗标
     3.1.
可指定讯息窗口上的图标
     3.2.
可指定讯息窗口出现的按钮
     3.3.
可指定预设Focus在哪一个按钮
     3.4.
可指定是否 Modal
     3.5.
其它

自变量说明:
Text
Caption 自变量为 PCahr 型态,字符串型态的变量可用 PChar()
转换,若直接传入一个字符串的话,就不用转型。

例如:
var s: string;
....
s := '
存档失败';
Application.MessageBox(PChar(s), '
错误', MB_ICONERROR);

Flag 自变量为 Longint 型态,可用的传入值有:
1.
指定讯息窗口上的图标
  1.1 MB_ICONEXCLAMATION
MB_ICONWARNING
     
出现「黄三角形内有一个惊叹号」图示

  1.2 MB_ICONINFORMATION
MB_ICONASTERISK
     
出现「白色椭圆内有一个蓝色小写 i」图示

  1.3 MB_ICONQUESTION
     
出现「问号」图示
  1.4 MB_ICONSTOP
MB_ICONERROR MB_ICONHAND
     
出现「红色X」图示

2. 指定讯息窗口出现的按钮
  2.1 MB_ABORTRETRYIGNORE
     
出现「Abort」「Retry」「Ignore」三个按钮
  2.2 MB_OK
     
出现「Ok」按钮,为默认值。
  2.3 MB_OKCANCEL
     
出现「Ok」「Cancel」两个按钮
  2.4 MB_RETRYCANCEL
     
出现「Retry」「Cancel」两个按钮
  2.5 MB_YESNO
     
出现「Yes」「No」两个按钮
  2.6 MB_YESNOCANCEL
     
出现「Yes」「No」「Cancel」三个按钮

3. 可指定预设Focus在哪一个按钮
  3.1 MB_DEFBUTTON1
     
指定focus在左边第一个按钮,这是默认值。
  3.2 MB_DEFBUTTON2
MB_DEFBUTTON3MB_DEFBUTTON4
     
以此类推,指定focus在左边第二、三、四个按钮

4. 可指定是否 Modal
  4.1 MB_APPLMODAL
     
对于应用程序而言,是
modal form
  4.2 MB_SYSTEMMODAL
     
对于操作系统而言,是
modal form
  4.3 MB_TASKMODAL
     
对于 task 而言,是
modal form
     
一般来说,这跟 MB_APPLMODAL 是等效的,但是当应用程序中的所有

     form
都隐藏的时候,就必须使用这个,才能达到 modal 的目的

5. 其它
  5.1 MB_TOPMOST
     
将讯息窗口提至最前面
  5.2 MB_RIGHT
     
将消息正文向右对齐

在一个 Flag 要指定这么多的东西,要如何使用呢?
只要把要用的自变量组合 or 起来就可以了。例如:

Application.MessageBox(PCahr(sMsg), PChar(sCap), MB_YESNO or MB_ICONQUESTION or MB_DEFBUTTON2)
这样会出现「问号」图标,「Yes」「No」两个按钮,而且 focus No 按钮上

回传值:
  1. IDABORT
:使用者按了「Abort」按钮
  2. IDCANCEL
:使用者按了「Cancel」按钮
  3. IDIGNORE
:使用者按了「Ignore」按钮
  4. IDNO
:使用者按了「No」按钮
  5. IDOK
:使用者按了「Ok」按钮
  6. IDRETRY
:使用者按了「Retry」按钮
  7. IDYES
:使用者按了「Yes」按钮

顺带一提,按钮上的文字是会随着操作系统的语系而改变的,用中文版的 Windows,按钮上的文字就出现中文。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值