派生クラスをダイアログ ベースの WTL/ATL アプリとして使用してCDialogImpl
、ユーザーが右上の "X" ボタンをクリックした (またはEscまたはAlt+を押したF4) ときにメイン ウィンドウを非表示にしたいと考えています。
現在、「X」はダイアログを閉じ、アプリケーションを終了します。
この動作を変更して、ダイアログ ボックスを閉じるのではなく非表示にするだけにしたい。これは可能ですか?
ATL / WTLがこのラッパーを提供するかどうかはわかりませんが、WinAPIでは、探している関数はShowWindowであり、次のように呼び出します。
ShowWindow(hwnd, SW_HIDE);
アプリケーションを閉じたときにこれを実行する場合は、処理する必要のあるメッセージはWM_CLOSEです。
クイック検索の後、MSDNはCWindow :: ShowWindowを明らかにします。これは、前述のラッパーです。