C ++でデフォルトのクローズ操作を変更するにはどうすればよいですか?
(Windowsフォームアプリで)赤いXを押すと、フレームを閉じたくはありませんが、非表示にします。
それがWindowsフォームアプリケーションである場合、おそらくすでに何らかのメッセージループプロシージャがあり(そうでない場合は実装する必要があります)、その中でWM_CLOSEメッセージを処理し、ウィンドウを最小化して、イベントが処理されたことを返します。デフォルトの実装ではウィンドウは閉じません。MFC、ATL、Winformsなど、どのテクノロジーを使用していますか?
編集
Windowsフォームを使用していることを明確にしたので、これは機能するはずです(コンストラクターに終了イベントハンドラーを追加する方法と、実際に終了をキャンセルしてウィンドウを最小化する方法を示す小さな例):
Form1(void)
{
InitializeComponent();
//
//TODO: Add the constructor code here
//
this->Closing += gcnew CancelEventHandler(this, &Form1::Form1_Closing);
}
void Form1_Closing( Object^ /*sender*/, System::ComponentModel::CancelEventArgs^ e )
{
this->WindowState = FormWindowState::Minimized;
e->Cancel = true;
}
Form::Closing
イベントの詳細については、こちらをご覧ください。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加