當調用:如何啓用AfxMessageBox是/否(MB_YESNO)「關閉」按鈕? (右上角的「X」)
AfxMessageBox(strMsg, MB_YESNO);
一個消息框與按鈕「是」和「否」的顯示。但是右上角的「X」(關閉按鈕)被禁用,按ESC不起作用。
這是因爲唯一有效的結果是IDYES和IDNO,而不是IDCANCEL。
是否有快速獲取此行爲的方法? 我想避免:
- 爲此創建一個自定義對話框。
- 有是/否/取消按鈕。
在Vista中,刪除文件時,要求確認的對話框只有「是」和「否」,也可以用關閉按鈕或ESC取消。我猜這是一個自定義對話框。
我認爲當問題是「你確定要刪除項目X」時,「取消」按鈕是多餘的,因爲它與單擊「否」按鈕相同。 ESC適合喜歡使用鍵盤的用戶。啓用關閉按鈕「X」只是有意義的,因爲它允許回答「否」,但在同一個對話框的不同位置。如果按鈕「否」和「取消」彼此相鄰並且它們相同,則兩者都沒有意義。 – rec 2009-05-06 18:57:01