Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.09.26;
Скачать: CL | DM;

Вниз

Как сделать, чтобы форму нельзя было закрыть и уничтожить пока   Найти похожие ветки 

 
Gear   (2004-09-12 18:48) [0]

Как сделать так, чтобы форму нельзя было закрыть и уничтожить пока не выполниться какое-либо условие?


 
QuasiLamo ©   (2004-09-12 18:53) [1]

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

Сообщение 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



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

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;


 
Семен Сорокин ©   (2004-09-12 18:56) [2]

Form.OnClose
Action := caNone
более глобально (работает когда винду вырубают)
Form.OnCloseQuery
CanClose = false



Страницы: 1 вся ветка

Текущий архив: 2004.09.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
14-1094725109
stud
2004-09-09 14:18
2004.09.26
хороший программист 1С


1-1095149865
}|{yk
2004-09-14 12:17
2004.09.26
Глюк с Excel и Win98


1-1094729619
Sandman25
2004-09-09 15:33
2004.09.26
Оптимизация try finally


3-1093604914
Aleksandr.
2004-08-27 15:08
2004.09.26
Скажите, BDIInit надо вызывать в каждом потоке, работающем с БДЕ?


3-1093304285
Demn
2004-08-24 03:38
2004.09.26
ListView и БД