delphi的訊息對話方塊,類似VFP中的WAIT和MESSAGEBOXdelphi的訊息對話方塊,類似VFP中的WAIT和MESSAGEBOX
1、最簡單的是:showmessage() 它只有一個OK按鈕,括弧中填入希望提示的字串。
例:showmessage('除數不能為零!!!')
2、showmessagefmt() 顯示一條提示資訊,只有一個OK按鈕,但提示資訊的字元可以帶格式符。
3、另一個常用的訊息對話方塊:messagedlg(),它的功能類似VFP的messagebox(),可以帶訊息類型符號:警告:mtwaring 黃色驚歎號 錯誤:mterror 紅色的叉
資訊:mtinformation 藍色的I, 詢問:mtconfirmation 綠色的問號 ,
還有個mtcustom 沒有位元影像資訊。
可以帶多個按鈕:mbyes mbno mbok mbcancel mbhelp mbabort mbretry mball mbignore,
分別代表按鈕:yes, no, ok, cancel, help, abort, retry, all, ignore.
可以返回一個結果:mrnone, mrabort,mryes,mrok,mrretry,mrno,mrcancel,mrignore,mrall
例子:if MESSAGEDLG('確認要刪除這條記錄嗎?',mtwarning,[mbyes,mbno],0)=mryes then
begin
with DataM.ADOTable1 do
begin
delete;
end;
end;
4、和messagedlg()很相似的有一個:messagedlgpos()
它與messagedlg()的區別是可以指定一個顯示的位置:
例子:if MESSAGEDLGPOS('確認要刪除這條記錄嗎?',mtwarning,[mbyes,mbno],0,50,60)=mryes then
begin
with DataM.ADOTable1 do
begin
delete;
end;
end;
在messagedlgpos()中的最後兩個數就是顯示訊息對話方塊視窗的橫,縱座標
5、creatmessagedialog:它不能直接顯示對話方塊,而要調用建立的表單來顯示。
再就是常用windows的訊息對話方塊:messagebox()了,
例子:if application.messagebox(pansichar('確實刪除這行資料嗎?'),'確認',mb_yesno)=idYes then abort;
MessageBox對話方塊 輸入控制項的 ImeName屬性把IME去掉就預設為英文輸入了
MessageBox對話方塊是比較常用的一個資訊對話方塊,其不僅能夠定義顯示的資訊內容、資訊提示表徵圖,而且可以定義按鈕組合及對話方塊的標題,是一個功能齊全的資訊對話方塊資訊提示表徵圖,而且可以定義按鈕組合及對話方塊的標題,是一個功能齊全的資訊對框。
1、函數原型及參數
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 //按否按鈕