呼び出すとき:ボタンでメッセージボックスAfxMessageBoxを有効にする方法Yes/No(MB_YESNO) "閉じる"ボタン? (右上「X」)
AfxMessageBox(strMsg, MB_YESNO);
を「はい」と「いいえ」が表示されます。しかし、右上隅の "X"(クローズボタン)は無効になっていて、ESCを押しても効果はありません。
唯一の有効な結果は、IDCANCELではなくIDYESとIDNOになるからです。
この動作を有効にする簡単な方法はありますか? 私が避けたいもの:
- このためのカスタムダイアログを作成する。
- はい/いいえ/キャンセルボタンがあります。
ファイルを削除するとき、確認を求めるダイアログには「はい」と「いいえ」だけが表示され、閉じるボタンまたはESCでキャンセルすることもできます。私はそれがカスタムダイアログだと思っています。
「Xを削除してもよろしいですか?」という質問は、「いいえ」ボタンをクリックするのと同じですので、「キャンセル」ボタンは冗長です。 ESCは、キーボードを使いたいユーザーのためのものです。クローズボタン "X"を有効にしておくと意味があります。なぜなら、同じダイアログ内の別の場所で「いいえ」と答えることができるからです。 「いいえ」と「キャンセル」のボタンが互いに隣り合っていて、同じことをする場合、両方を持つことは意味がありません。 – rec
問題は「いいえ」で、「キャンセル」は異なる回答です。彼らは似たような場合もありますが、それは保証されていません。 「空のフォルダ」機能の例:「サブフォルダも空にする必要がありますか?」、はい/いいえ。キャンセルは何も削除しません。はいといいえいくつかのものを削除しないでください。 –