Restoreの前にイベントを処理するには WM_SYSCOMMANDメッセージを捕捉します。
void __fastcall TForm1::OnMessage(tagMSG &Msg, bool &Handled)
{
if(Msg.message == WM_SYSCOMMAND)
{
int ScMsg = Msg.wParam & 0xFFF0;
if(IsIconic(Application->Handle))
{
if((ScMsg == SC_MAXIMIZE || ScMsg == SC_ZOOM || ScMsg == SC_RESTORE))
{
if(Application->MessageBox("復元しますか?", NULL, MB_YESNO) != IDNO)
{
Handled = true; //復元メッセージをキャンセル
}
}
}
}
}
目次に戻る
| Copyright(c) 2008 WoodenSoldier Software |
|