MessageBox

函數(shù)功能:

MessageBox 函數(shù)用于顯示一個(gè)模態(tài)對(duì)話框毫炉,其中包含一個(gè)系統(tǒng)圖標(biāo)狸涌、 一組按鈕和一個(gè)簡(jiǎn)短的特定于應(yīng)用程序消息,如狀態(tài)或錯(cuò)誤的信息您旁。

消息框中返回一個(gè)整數(shù)值,該值指示用戶單擊了哪個(gè)按鈕印叁。

API 函數(shù)原型:

注釋:_In_ 說明該參數(shù)是輸入的被冒,_opt_ 說明該參數(shù)是可選參數(shù)。

int WINAPI MessageBox(

_In_opt_??HWND hWnd,

_In_opt_??LPCTSTR lpText,

_In_opt_??LPCTSTR lpCaption,

_In_? ?? ?UINT uType

);


參數(shù)解析:

參數(shù)含義

hWnd

1. 該消息框的父窗口句柄

2. 如果此參數(shù)為NULL轮蜕,則該消息框沒有擁有父窗口

lpText

消息框的內(nèi)容

lpCaption

消息框的標(biāo)題

uType

1. 指定一個(gè)決定對(duì)話框的內(nèi)容和行為的位標(biāo)志集

2. 此參數(shù)可以通過指定下列標(biāo)志或標(biāo)志的組合昨悼,來顯示消息框中的按鈕以及圖標(biāo)

uType參數(shù)定義解析

按鈕含義

MB_OK默認(rèn)值,有一個(gè)“確認(rèn)”按鈕在里面

MB_YESNO有“是”和“否”兩個(gè)按鈕在里面

MB_ABORTRETRYIGNORE有“中止”跃洛,“重試”和“跳過”三個(gè)按鈕在里面

MB_YESNOCANCEL有“是”率触,“否”和“取消”三個(gè)按鈕在里面

MB_RETRYCANCEL有“重試”和“取消”兩個(gè)按鈕在里面

MB_OKCANCEL有“確定”和“取消”兩個(gè)按鈕在里面

圖標(biāo)含義

MB_ICONEXCLAMATION一個(gè)驚嘆號(hào)出現(xiàn)在消息框:?

MB_ICONWARNING一個(gè)驚嘆號(hào)出現(xiàn)在消息框(同上)

MB_ICONINFORMATION一個(gè)圓圈中小寫字母i組成的圖標(biāo)出現(xiàn)在消息框:?

MB_ICONASTERISK一個(gè)圓圈中小寫字母i組成的圖標(biāo)出現(xiàn)在消息框(同上)

MB_ICONQUESTION一個(gè)問題標(biāo)記圖標(biāo)出現(xiàn)在消息框:?

MB_ICONSTOP一個(gè)停止消息圖標(biāo)出現(xiàn)在消息框:?

MB_ICONERROR一個(gè)停止消息圖標(biāo)出現(xiàn)在消息框(同上)

MB_ICONHAND一個(gè)停止消息圖標(biāo)出現(xiàn)在消息框(同上)

默認(rèn)按鈕含義

MB_DEFBUTTON1指定第一個(gè)按鈕為默認(rèn)按鈕

MB_DEFBUTTON2指定第二個(gè)按鈕為默認(rèn)按鈕

MB_DEFBUTTON3指定第三個(gè)按鈕為默認(rèn)按鈕

MB_DEFBUTTON4指定第四個(gè)按鈕為默認(rèn)按鈕

消息框形態(tài)含義

MB_APPLMODAL1. 在 hWnd 參數(shù)標(biāo)識(shí)的窗口中繼續(xù)工作以前,用戶一定響應(yīng)消息框

2. 但是汇竭,用戶可以移動(dòng)到其他線程的窗口且在這些窗口中工作

3. 根據(jù)應(yīng)用程序中窗口的層次機(jī)構(gòu)葱蝗,用戶則以移動(dòng)到線程內(nèi)的其他窗口

4. 所有母消息框的子窗口自動(dòng)地失效,但是彈出窗口不是這樣

5. 如果既沒有指定 MB_SYSTEMMODAL 也沒有指定 MB_TASKMODAL细燎,則 MB_APPLMODAL 為默認(rèn)的

MB_SYSTEMMODAL1. 除了消息框有 WB_EX_TOPMOST 類型两曼,否則 MB_APPLMODAL 和 MB_SYSTEMMODAL 一樣

2. 用系統(tǒng)模態(tài)消息框來改變各種各樣的用戶,主要的損壞錯(cuò)誤需要立即注意(例如玻驻,內(nèi)存溢出)

3. 如果不是那些與 hWnd 聯(lián)系的窗口悼凑,此標(biāo)志對(duì)用戶對(duì)窗口的相互聯(lián)系沒有影響

MB_TASKMODAL1. 如果參數(shù) hWnd 為 NULL 的話,那么除了所有屬于當(dāng)前線程高層次的窗口失效外璧瞬,MB_TASKMODAL 和 MB_APPLMODAL 一樣

2. 當(dāng)調(diào)用應(yīng)用程序或庫沒有一個(gè)可以得到的窗口句柄時(shí)户辫,可以使用此標(biāo)志,但仍需要阻止輸入到調(diào)用線程的其他窗口嗤锉,而不是擱置其他線程

其他標(biāo)志含義

MB_DEFAULT_DESKTOP_ONLY1. 接收輸入的當(dāng)前桌面一定是一個(gè)默認(rèn)桌面渔欢,否則函數(shù)調(diào)用失敗

2. 默認(rèn)桌面是一個(gè)在用戶已經(jīng)記錄且以后應(yīng)用程序在此上面運(yùn)行的桌面

MB_HELP1. 把一個(gè) Help 按鈕增加到消息框

2. 選擇 Help 按鈕或按 F1 產(chǎn)生一個(gè) Help 事件

MB_RIGHT文本為右對(duì)齊

MB_RTLREADING用在 Hebrew 和 Arabic 系統(tǒng)中從右到左的順序顯示消息和大寫文本

MB_SETFOREGROUND1. 消息框變?yōu)榍熬按翱?/p>

2. 在內(nèi)部系統(tǒng)為消息個(gè)調(diào)用 SetForegroundWindow 函數(shù)

MB_TOPMOST消息框用 WS_EX_TOPMOST 窗口類型來創(chuàng)建 MB_SERVICE_NOTIFICATION

返回值:

返回值含義

IDOK用戶按下了“確認(rèn)”按鈕

IDCANCEL用戶按下了“取消”按鈕

IDABORT用戶按下了“中止”按鈕

IDRETRY用戶按下了“重試”按鈕

IDIGNORE用戶按下了“忽略”按鈕

IDYES用戶按下了“是”按鈕

IDNO用戶按下了“否”按鈕

舉例:

#include

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)

{

MessageBox(NULL, TEXT("這是我在魚C學(xué)的第一個(gè)程序!"), TEXT("打招呼"), MB_OKCANCEL | MB_ICONQUESTION | MB_DEFBUTTON2);

return 0;

}

學(xué)習(xí) Windows SDK 編程有什么好處瘟忱?

答:微軟每推出一個(gè)重要的 Windows 版本奥额,一般都會(huì)同時(shí)推出一個(gè) SDK(Software Development Kit)苫幢。SDK 包含了開發(fā)該 Windows 版本所需的 Windows 函數(shù)和常數(shù)定義、API 函數(shù)說明文檔垫挨、相關(guān)工具和示例态坦。SDK 編程一般使用 C 語言調(diào)用 API 實(shí)現(xiàn)開發(fā),因此也成為 Windows API 編程棒拂。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末伞梯,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子帚屉,更是在濱河造成了極大的恐慌谜诫,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,968評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件攻旦,死亡現(xiàn)場(chǎng)離奇詭異喻旷,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)牢屋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門且预,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人烙无,你說我怎么就攤上這事锋谐。” “怎么了截酷?”我有些...
    開封第一講書人閱讀 153,220評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵涮拗,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我迂苛,道長(zhǎng)三热,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,416評(píng)論 1 279
  • 正文 為了忘掉前任三幻,我火速辦了婚禮就漾,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘念搬。我一直安慰自己抑堡,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評(píng)論 5 374
  • 文/花漫 我一把揭開白布锁蠕。 她就那樣靜靜地躺著夷野,像睡著了一般懊蒸。 火紅的嫁衣襯著肌膚如雪荣倾。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,144評(píng)論 1 285
  • 那天骑丸,我揣著相機(jī)與錄音舌仍,去河邊找鬼妒貌。 笑死,一個(gè)胖子當(dāng)著我的面吹牛铸豁,可吹牛的內(nèi)容都是我干的灌曙。 我是一名探鬼主播,決...
    沈念sama閱讀 38,432評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼节芥,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼在刺!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起头镊,我...
    開封第一講書人閱讀 37,088評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤蚣驼,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后相艇,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體颖杏,經(jīng)...
    沈念sama閱讀 43,586評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評(píng)論 2 325
  • 正文 我和宋清朗相戀三年坛芽,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了留储。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,137評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡咙轩,死狀恐怖获讳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情活喊,我是刑警寧澤赔嚎,帶...
    沈念sama閱讀 33,783評(píng)論 4 324
  • 正文 年R本政府宣布,位于F島的核電站胧弛,受9級(jí)特大地震影響尤误,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜结缚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評(píng)論 3 307
  • 文/蒙蒙 一损晤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧红竭,春花似錦尤勋、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至稀火,卻和暖如春暖哨,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背凰狞。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評(píng)論 1 262
  • 我被黑心中介騙來泰國(guó)打工篇裁, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留沛慢,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,595評(píng)論 2 355
  • 正文 我出身青樓达布,卻偏偏與公主長(zhǎng)得像团甲,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子黍聂,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容