Главная страница
    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.45 MB
Время: 0.03 c
11-1080312842
Raki
2004-03-26 17:54
2004.09.26
MHMonthCalendar 0.3


14-1094645477
Yakudza
2004-09-08 16:11
2004.09.26
Sybase ASE на шару отдают !


4-1092151693
Ego
2004-08-10 19:28
2004.09.26
можно ли сделать "ловушку" без использования библиотеки?


14-1094208586
peypivo
2004-09-03 14:49
2004.09.26
Не работают сайты с новостями?


3-1093867309
Senator
2004-08-30 16:01
2004.09.26
index





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский