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

Вниз

Как сделать закрытие формы по нажатию Esc?   Найти похожие ветки 

 
vodvorezlaya ©   (2006-09-29 10:22) [0]

Доброго времени суток.

procedure TForm2.FormKeyPress(Sender: TObject; var Key: Char);
begin
if (key=#27) then form1.Close;
end;


не работает когда на форме есть другие компоненты.

Как правильно сделать.

Спасибо.


 
Elen ©   (2006-09-29 10:24) [1]

Выставь form1.keyPreview:=true


 
ASoft   (2006-09-29 10:26) [2]

кажется, TForm2. - не главная форма, главная по всей видимости form1, что не есть гуд.... иначе..
эм, обработчик надо не FormKeyPress(), а FormKeyDown()..."key=27"


 
Elen ©   (2006-09-29 10:28) [3]


> ASoft

+ к этому Тогда Application.terminate чтоб наверняка


 
MsGuns ©   (2006-09-29 14:00) [4]

Блин, советчики..
Чего вы фигню полную советуете ? Клавиша Esc может быть многократно заюзана приложением в разных контекстах, т.к. интуитивно "близка" пользователям.

Проблема с закрытием формы по нажатию Esc решается примитивным образом - через Action, в обработчике которого стоит проверка возможности закрытия формы (а тем более приложения) и, если можно, то Close главной формы.

И еще. Давать Application.Terminate из неглавной формы - такая же хреновая манера, как пИсать с балкона - типа пофиг кто там внизу.


 
Elen ©   (2006-09-29 14:04) [5]


> Блин, советчики..

Добро пожаловать в клуб любителей посоветовать ... :D


 
ASoft   (2006-09-29 18:39) [6]

Чего вы фигню полную советуете [4]
зачем ж так опрометчиво :)  чел спросил как закрыть форму эскейпом и где видно, что в [0]Esc может быть многократно заюзана приложением в разных контекстах,
а говоря кажется, TForm2. - не главная форма, главная по всей видимости form1, что не есть гуд.
я имел в виду, нечто подобное этому: Давать Application.Terminate из неглавной формы - такая же хреновая манера, как



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

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

Наверх




Память: 0.48 MB
Время: 0.065 c
15-1158906102
den_777
2006-09-22 10:21
2006.10.15
Где лучше(удобнее,быстрее) купить программные продукты.


6-1147845759
BanderLog
2006-05-17 10:02
2006.10.15
Использование TIdSync в Indy10


3-1155540931
infom
2006-08-14 11:35
2006.10.15
MS Access Запрос с более 255 полями.


1-1157041266
Max.66RUS
2006-08-31 20:21
2006.10.15
Вопрос по сохранению имени и пароля....


2-1159207386
ElvenArch
2006-09-25 22:03
2006.10.15
Перевод из Fox в InterBase