MFC MessageBox用法小結

2021-08-04 05:45:50 字數 2476 閱讀 7324

**:

一、   函式原型及引數

function messagebox(hwnd: hwnd; text, caption: pchar; type: word): integer;

hwnd:對話方塊父視窗控制代碼,對話方塊顯示在delphi窗體內,可使用窗體的handle屬性,否則可用0,使其直接作為桌面視窗的子視窗。

text:欲顯示的資訊字串。

caption:對話方塊標題字串。

type:對話方塊型別常量。

該函式的返回值為整數,用於對話方塊按鈕的識別。

二、型別常量

對話方塊的型別常量可由按鈕組合、預設按鈕、顯示圖示、執行模式四種常量組合而成。

(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_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。

五、在messagebox

中顯示變數的值

cstring string;

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

messagebox(string,"訊息框標題",訊息框型別);

stack用法,queue用法,

stack stack 模板類的定義在標頭檔案中。stack 模板類需要兩個模板引數,乙個是元素型別,乙個容器型別,但只有元素型別是必要 的,在不指定容器型別時,預設的容器型別為deque。定義stack 物件的示例 如下 stack s1 stack s2 stack 的基本操作有 入棧,如例 s...

stack用法,queue用法,

stack stack 模板類的定義在標頭檔案中。stack 模板類需要兩個模板引數,乙個是元素型別,乙個容器型別,但只有元素型別是必要 的,在不指定容器型別時,預設的容器型別為deque。定義stack 物件的示例 如下 stack s1 stack s2 stack 的基本操作有 入棧,如例 s...

object args用法 args的用法

object args用法 args和 kwargs主要用於函式定義中。args和 kwargs允許您將可變數量的引數傳遞給函式。變數在這裡的含義是,您事先不知道使用者可以將多少個引數傳遞給您的函式,因此在這種情況下,您將使用這兩個關鍵字。args用於將非關鍵字的可變長度引數列表傳送到函式。這是乙個...