开发学院软件开发Delphi Delphi Application.MessageBox详解 阅读

Delphi Application.MessageBox详解

 2010-10-19 13:55:45 来源:WEB开发网   
核心提示:1. Text:要显示的讯息2. Caption:讯息视窗的标题列文字3. Flags:讯息旗标 3.1. 可指定讯息视窗上的图示 3.2. 可指定讯息视窗出现的按钮 3.3. 可指定预设Focus在哪一个按钮 3.4. 可指定是否 Modal 3.5. 其他引数说明:Text、Caption 引数为 PCahr 型态

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_DEFBUTTON3、MB_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,按钮上的文字就出现中文。

Tags:Delphi Application MessageBox

编辑录入:爽爽 [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
更多精彩
    赞助商链接

    热点阅读
      焦点图片
        最新推荐
          精彩阅读