MessageBox的常見用法

一    函數原型及參數
 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        //按否按鈕
二    用法

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;
注意:
以上消息框的用法是在CWnd的子類中的應用,如果不是,則要MessageBox(NULL,"ddd","ddd",MB_OK); 或MessageBox(hWnd,"ddd","ddd",MB_OK); hWnd爲某窗口的句柄,或者直接用AfxMessageBox。

二、在MessageBox中顯示變量的值

    CString string;

     string.format("%d%s",m_age, m_address); //將變量組裝到字符串中

      MessageBox(string,"消息框標題",消息框類型);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章