MessageBox函數第一個參數hwnd的作用


  MessageBox 函數用於創建、顯示並操作一個消息對話框。該對話框包含由調用程序定義的信息和標題,以及預先定義的圖標和按鈕。

  這個方法的第一個參數hWnd,代表消息框擁有的窗口。這個參數到底有什么作用呢?做了一個例子,剛好測試到這一點。

 

  假如hwnd句柄指向的窗口是置頂展示的。

1、參數不為NULL
  MessageBox(hwnd,"123","Win32_Mouse",MB_OK);
  彈出消息框繼承了置頂展示的效果。原窗口中的所有按鈕都不可點擊,也不能拖動,只能先結束當前的消息框才能操作原來的窗口。

 

2、參數為NULL
  MessageBox(NULL,"ABC","Win32_Mouse",MB_OK);
  彈出的消息框沒有擁有的窗口,沒有置頂展示的效果了,會被原來的窗口給遮蓋住一部分。原窗口可以進行所有的操作。


 

參數說明

hWnd
  指定該對話框的所有者窗口。如果該參數為空(0),則該對話框不屬於任何窗口(?)。
lpText:
  顯示在對話框中的消息。
lpCaption
  在對話框標題欄中顯示的字符串表達式。如果該參數為空(vbNullString),則使用默認的“錯誤”作為對話框的標題。
wType
  指定顯示按鈕的數目及形式,使用的圖標樣式,缺省按鈕是什么以及消息框的強制回應等。可以為下列常數之一或某幾個數值相加的和。

指定按鈕樣式
MB_ABORTRETRYIGNORE —— 顯示 Abort、Retry 及 Ignore 按鈕。
MB_OK —— 只顯示 OK 按鈕。(默認)
MB_OKCANCEL —— 顯示 OK 及 Cancel 按鈕。
MB_RETRYCANCEL —— 顯示 Retry 及 Cancel 按鈕。
MB_YESNO —— 顯示 Yes 及 No 按鈕。
MB_YESNOCANCEL —— 顯示 Yes、No 及 Cancel 按鈕。

指定圖標樣式
MB_ICONEXCLAMATION, MB_ICONWARNING —— 顯示 Warning Message 圖標。
MB_ICONINFORMATION, MB_ICONASTERISK —— 顯示 Information Message 圖標。
MB_ICONQUESTION —— 顯示 Warning Query 圖標。
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND—— 顯示 Critical Message 圖標。

指定默認按鈕
MB_DEFBUTTON1 —— 第一個按鈕是缺省值。(默認)
MB_DEFBUTTON2 —— 第二個按鈕是缺省值。
MB_DEFBUTTON3 —— 第三個按鈕是缺省值。
MB_DEFBUTTON4 —— 第四個按鈕是缺省值。

指定對話框模式等:
MB_APPLMODAL —— 應用程序強制返回;應用程序一直被掛起,直到用戶對消息框作出響應才繼續工作。
MB_SYSTEMMODAL —— 系統強制返回;全部應用程序都被掛起,直到用戶對消息框作出響應才繼續工作。
MB_TASKMODAL
MB_DEFAULT_DESKTOP_ONLY
MB_HELP —— 將Help按鈕添加到消息框。
MB_RIGHT —— 文本為右對齊。
MB_RTLREADING —— 指定文本應為在希伯來和阿拉伯語系統中的從右到左顯示。
MB_SETFOREGROUND —— 指定消息框窗口作為前景窗口。
MB_TOPMOST
MB_SERVICE_NOTIFICATION
MB_SERVICE_NOTIFICATION_NT3X
MB_SERVICE_NOTIFICATION

返回值
如果沒有足夠內存創建消息對話框,則返回0。
如果函數成功運行,則返回下列數值之一:
IDABORT —— 用戶點擊了 Abort 按鈕。
IDCANCEL —— 用戶點擊了 Cancel 按鈕。
IDIGNORE —— 用戶點擊了 Ignore 按鈕。
IDNO —— 用戶點擊了 No 按鈕。
IDOK —— 用戶點擊了 OK 按鈕。
IDRETRY —— 用戶點擊了 Retry 按鈕。
IDYES —— 用戶點擊了 Yes 按鈕。
如果對話框顯示 Cancel 按鈕,則按下 ESC 鍵與單擊 Cancel 按鈕的效果相同。

參考鏈接:
[1]http://baike.baidu.com/link?url=d9klcIelIf1rjHnevFn1HzmWir875EvN-q7flzCVAmlbiPjHVtSZgsUNU9jkXyUMXaCjVERpQJmNlyjYOGg45ECogaXJiFSSoSjsrsB-uFXQzPQ-0HtOX4KtgCydGgkL


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM