TForm i TApplication
12.08.1999
  • Przechwytywanie operacji minimalizacji i maksymalizacji okna.

       Trzeba przechwycić komunikat WM_SYSCOMMAND. Podczas przeciągania wParam ustawiony jest SC_MINIMIZE lub SC_MAXIMIZE.

//------------------------------------------------------ 
//w pliku nagłówkowym  
void __fastcall RestrictMinimizeMaximize(TMessage &Msg);  
BEGIN_MESSAGE_MAP  
    MESSAGE_HANDLER(WM_SYSCOMMAND, TMessage, RestrictMinimizeMaximize)  
END_MESSAGE_MAP(TForm)  

//------------------------------------------------------ 
//w pliku źródłowym

void __fastcall TForm1::RestrictMinimizeMaximize(TMessage& Msg)  
{  
    if (Msg.WParam == SC_MINIMIZE)  
     {  
        //przechwycił minimalizację...  
     }  
    else if (Msg.WParam == SC_MAXIMIZE)  
     {  
        //przechwycił maksymalizację... 
     }  
     TForm::Dispatch(&Msg);  
    // albo "else TForm::Dispatch(&Msg)", żeby zatrzymać operację 
}