1. 程式人生 > >python中彈出訊息框--MessageBox

python中彈出訊息框--MessageBox

【函式】 <整型> MessageBox(<字串> Text, <字串> Title, <整型> nType);
【函式說明】 彈出一個訊息框。
【語法】
引數:
Text <字串>,訊息框的正文;
Title <字串>,訊息框的標題;
nType <整型>,訊息框的型別。
返回值:<整型>,使用者在訊息框上點選關閉時的選擇的按鈕。
【說明】
其中nType對應的對話方塊如下表所示:
0: 確定
1: 確定,取消
2: 終止,重試,忽略
3: 是,否,取消
4: 是,否
5: 重試,取消
6: 取消,再試一次,繼續(注:Windows NT下不支援)

返回值對應的值如下:
1: 確定
2: 取消
3: 終止
4: 重試
5: 忽略
6: 是
7: 否
10:再試一次

        應用程式中的提示資訊處理程式是非常出重要的部分,使用者要知道他輸入的資料到底正不正確,或者是應用程式有一些提示資訊要告訴使用者,都必須通過提示資訊處理程式來顯示適當的資訊,讓使用者瞭解下一步該如何配置。提示資訊有很多種類,包括警告,錯誤,提示,確認,重試等。不同種類的提示資訊框適合用在各種不同的情況。
  在C++Builder中開發提示資訊框只須呼叫MessageBox這個資訊提示框函式就行,下面就是這個函式說明:
int __fastcall MessageBox(const char * Text,//提示資訊框的內容
const char * Caption, //提示資訊框的標題
int Flags); //提示資訊框的類別引數Flags的值是用來標誌提示資訊框的類別的,下面是一些常用的類別:
引數值 樣式 意義
MB_ICONWARNING 含圖示、固定按鈕 警告資訊框
MB_ICONQUESTION 含圖示、固定按鈕 疑問資訊框
MB_IConERROR 含圖示、固定按鈕 錯誤資訊框
MB_ICONASTERISK 含圖示、固定按鈕 提示資訊框
MB_HELP 不含圖示、可改變按鈕 說明資訊框
MB_OK 不含圖示、可改變按鈕 提示資訊框
MB_OKCANCEL 不含圖示、可改變按鈕 確認資訊框
MB_RETRYCANCEL 不含圖示、可改變按鈕 重試資訊框
MB_YESNO 不含圖示、可改變按鈕 是否資訊框
MB_YESNOCANCEL 不含圖示、可改變按鈕 是否取消資訊框
  從上表可以看出來,提示資訊框的類別可以分成含圖示和不含圖示,含圖示的意思就是指提示資訊框上會有代表意義的圖形,不過這型別的提示資訊框的按鈕都是固定的,都是【確定】按鈕,不能增加也不能省略;不含圖示的提示資訊框,雖然沒有對應的圖形顯示在提示資訊框上,可是你卻可以在這種型別的提示資訊框內,加入各種組合的按鈕,用於各種不同的情況。
MessageBox函式會返回一個整數值,這個整數值代表使用者剛剛點選提示資訊框上的哪個按鈕,每個返回值的代表意義在下表:

返回值 數值 意義
IDOK 1 確定
IDCANCEL 2 取消
IDABORT 3 中斷
IDRETRY 4 重試
IDIGNORE 5 忽略
IDYES 6 是
IDNO 7 否

下面是提示資訊框的示範程式:
1. 警告資訊框
Application->MessageBox("警告資訊框","警告資訊框",MB_ICONWARNING);
2.疑問資訊框
Application->MessageBox("疑問資訊框","疑問資訊框",MB_ICONQUESTION);
3.錯誤提示框
Application->MessageBox("錯誤資訊框","錯誤資訊框",MB_IConERROR);
4.提示資訊框
Application->MessageBox("提示資訊框","提示資訊框",MB_ICONASTERISK);
5.說明資訊框
Application->MessageBox("說明資訊框","說明資訊框",MB_HELP);
6.提示資訊框
Application->MessageBox("提示資訊框","提示資訊框",MB_OK);
7.確認資訊框
Application->MessageBox("確認資訊框","確認資訊框",MB_OKCANCEL);
8.重試資訊框
Application->MessageBox("重試資訊框","重試資訊框",MB_RETRYCANCEL);
9.是否資訊框
Application->MessageBox("是否資訊框","是否資訊框",MB_YESNO);
10.是否取消資訊框
Application->MessageBox("是否取消資訊框","是否取消資訊框",MB_YESNOCANCEL);
  在C++Builder中,還提供了一個很簡單的資訊提示框函式,那就是ShowMessage。這個函式只有一個字串引數,你可以把要顯示的字串放到這個字串引數裡面,ShowMessage就回顯示出該資訊,但是沒有圖示,也沒有按鈕,只有單純的字串資訊而已。
下面是ShowMessage函式的說明:
extern PACKAGE void __fastcall ShowMessage(const AnsiString Msg);
例子:
ShowMessage("這個就是ShowMessage函式生成的資訊提示框!");
Application->MessageBox("AA", "BB", MB_OK | MB_ICONSTOP);

MessageBox(Application->Handle,"AA", "BB", MB_OK | MB_ICONSTOP);
這種寫法“級別”最高:如果彈出這樣的對話方塊,不點掉,Application下所有的Form都
不能“動”的。
MessageBox(Form1->Handle,"AA", "BB", MB_OK | MB_ICONSTOP);
這種寫法“級別”其次:如果彈出這樣的對話方塊,不點掉,只有From1不能“動”,其他
Show()的From還可以點。
MessageBox(NULL,"AA", "BB", MB_OK | MB_ICONSTOP);
這種寫法“級別”最低:如果彈出這樣的對話方塊,不點掉,From1也能“動”,其他
Show()的From也可以點。