Вниз
Скачать: CL | DM;

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

 
Layner   (2003-09-01 08:59) [0]

в элементах управления, меню, Edit, Memo и т.п. Заранее спасибо.


 
Song ©   (2003-09-01 09:03) [1]

TForm.KeyPreview:=True

и TForm.onKeyDown + VK_ESCAPE


 
wl ©   (2003-09-01 09:05) [2]

1)Свойство формы KeyPreview = true
и обрабатывать событие OnKeyDown

2)Если форма модальная, поставить на неё кнопку со свойством Cancel = true.


 
Song ©   (2003-09-01 09:07) [3]

2wl © (01.09.03 09:05) [2]
>> Если форма модальная, поставить на неё кнопку со свойством Cancel = true.

Не поможет, если активный контрол TMemo


 
Layner   (2003-09-01 09:09) [4]

Да, форма как раз модальная.


 
Юрий Зотов ©   (2003-09-01 09:09) [5]

Если есть кнопка "Закрыть", то назначьте ей Cancel=True. Если форма модальная, то назначьте еще и ModalResult = mrCancel, а если не модальная, то в обработчике OnClick напишите Close.

Если такой кнопки нет, то выставьте KeyPreview, а в обработчике OnKeyDown напишите:
if Key = VK_ESCAPE then
begin
Key := 0;
Close // или ModalResult := mrCancel
end;


 
Layner   (2003-09-01 09:22) [6]

Спасибо, но
На форме много элементов, форма модальная. Как только форма создаётся, фокус сразу принадлежит Memo, и .. не закрывает.


 
папа карло   (2003-09-01 09:25) [7]

Удалено модератором


 
Layner   (2003-09-01 09:27) [8]

А, всё, KeyPreview забыл. Спасибо!


 
Song ©   (2003-09-01 09:27) [9]

Напиши это условие на TMemo.onKeyDown


 
Song ©   (2003-09-01 09:29) [10]

2Layner
Вот каждый ответивший в тред написал тебе что надо KeyPreview использовать, а ты всё равно забыл..


 
Layner   (2003-09-01 09:31) [11]

Да нет, я так вчитался в совет Юрия Зотова, что строчку там пропустил. Ещё раз прошу прощения за свою не сообразительность :)


 
Dred2k ©   (2003-09-01 09:53) [12]

Просто сделай TAction с шорткатом Esc. Сработает по-любому.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.015 c
3-33480
testthewest
2003-08-20 12:45
2003.09.11
Delphi не реагирует на RAISERROR


3-33522
MakNik
2003-08-19 15:58
2003.09.11
uniqueidentifier


14-33769
вовка
2003-08-21 19:56
2003.09.11
3D рисование


3-33443
KIR
2003-08-21 16:45
2003.09.11
Для чего нужен компонент pFIBQuery?


1-33652
Макс
2003-08-30 16:11
2003.09.11
активное окно




   Наверх