一 函數原型及參數函數
function MessageBox(hWnd: HWND; Text, Caption: PChar; Type: Word): Integer;spa
一、參數列表orm
hWnd:對話框父窗口句柄,對話框顯示在Delphi窗體內,可以使用窗體的Handle屬性,不然可用0,使其直接做爲桌面窗口的子窗口。字符串
Text:欲顯示的信息字符串。原型
Caption:對話框標題字符串。string
Type:對話框類型常量。io
該函數的返回值爲整數,用於對話框按鈕的識別。function
二、類型常量form
對話框的類型常量可由按鈕組合、缺省按鈕、顯示圖標、運行模式四種常量組合而成。變量
(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; //「×」號圖標
【注意】下面兩種圖標分別是MB_ICONERROR和MB_ICONQUESTION。
(4)運行模式常量
MB_APPLMODAL = $00000000; //應用程序模式,在未結束對話框前也能切換到另外一應用程序
MB_SYSTEMMODAL = $00001000; //系統模式,必須結束對話框後,才能作其餘操做
MB_TASKMODAL = $00002000; //任務模式,在未結束對話框前也能切換到另外一應用程序
MB_HELP = $00004000; //Help Button
三、函數返回值
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。
3、在MessageBox中顯示變量的值
CString string;
string.format("%d%s",m_age, m_address); //將變量組裝到字符串中
MessageBox(string,"消息框標題",消息框類型);