Запрещаем пользователю закрыть приложение или переключится на другую форму в Delphi

Пара предложений на эту тему:

a) Создайте форму, занимающую весь экран (maximized) без системных кнопок (maximize, minimize, system).
b) В обработчике FormDeactivate для формы вызовите метод setFocus — это предотвратит.

Ctrl + Esc: Form1.SetFocus;

c) В обработчике события FormActivate, нужно присвоить метод Deactivate для приложения:

Application.onDeactivate := FormDeactivate;

d) Создайте всплывающее меню (popup) с единственным пунктом. В свойствах данного пункта нужно установить Visible = False. Создайте процедуру для этого пункта меню, делающую что-нибудь тривиальное типа x := 1 (для того, чтобы Delphi не удалил эту процедуру).
e) Присвойте созданное Popup меню форме (свойство Popupmenu).br f) Задайте горячую клавишу (shortcut) для Popup меню в методе FormActivate как показано ниже:

NullItem1.shortcut := ShortCut(VK_Tab, [ssAlt]);

NullItem1 нужно заменить на название созданного вами объекта — пункта меню.

Шаги d, e и f предотвращают Alt-Tab.

Kwork.ru - услуги фрилансеров от 500 руб.
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (10 оценок, среднее: 5,00 из 5)
Загрузка...
Добавить комментарий