Перехват нажатия на системные кнопки формы (закрытие , минимизация окна и т.д.)

 

  Сообщение WM_SYSCOMMAND приходит перед выполнением соответствующей команды,

   что дает возможность переопределить код.

  Описание :

  WM_SYSCOMMAND

  uCmdType = wParam;        // type of system command requested

  xPos = LOWORD(lParam);    // horizontal postion, in screen coordinates

  yPos = HIWORD(lParam);    // vertical postion, in screen coordinates

 

  Например, перехват события минимизации окна приложения:

Code:

  Type TMain = class(TForm)

    ....

   protected

     Procedure WMGetSysCommand(var Message : TMessage); message WM_SYSCOMMAND;

   end;

  .....

  //----------------------------------------------------------------

  //   Обработка сообщения WM_SYSCOMMAND (перехват минимизации окна)

  //----------------------------------------------------------------

  Procedure TMain.WMGetSysCommand(var Message : TMessage) ;

  Begin

       IF (Message..wParam = SC_MINIMIZE) 

       Then Main.Visible:=False

       Else Inherited;

  End;

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить