Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

горячие клавиши [D5, Win95/98]


MegaVoltik ©   (2002-12-10 17:54:00) 

как сделать чтоб по нажатию <Enter> на модальной форме нажималась кнопка ОК, а по нажатию <ESC> кнопка Cancel?

вот этот код не работает;(
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
case Key of
VK_Escape: btnCancel.Click;
VK_Return: btnOK.Click;
end;
end;


MegaVoltik   (2002-12-10 20:43:00) [1]

тогда всем большое спасиба, особенно Юре Зотову


Юрий Зотов   (2002-12-10 19:56:00) [2]

Вы какой вопрос задавали?

> как сделать чтоб по нажатию <Enter> на модальной форме
> нажималась кнопка ОК, а по нажатию <ESC> кнопка Cancel?

И как же он увязывается с Вашим постингом (10.12.02 19:48)?

Никак. Так что Вы уж определитесь, что же Вам все-таки нужно - ехать или шашечки?


MegaVoltik   (2002-12-10 19:48:00) [3]

но вот проблема когда на форме есть другой элемент управления, который имеет фокус ввода, то после завершения редактирования нажатием клавиши <Enter>, нажимается кнопка ОК, и закрывается форма, а если мне нужно продолжать редактировать другой элемент? как быть? снова открывать модальное окно??


Skier   (2002-12-10 18:19:00) [4]

>FreeLancer
Да точно ! Св-во Cancel вылетело из головы...:)
>MegaVoltik
см. FreeLancer © (10.12.02 18:15)


Юрий Зотов   (2002-12-10 18:17:00) [5]

> Самый простой вариант поставить у btnOK.Default := True

... а у кнопки btnCancel поставить Cancel = True.

И больше ничего не требуется. Никаких KeyPreview и никаких обработчиков.


FreeLancer   (2002-12-10 18:15:00) [6]

для TButton и TBitBtn:
btnCancel.Cancel := true;
btnOK.Default := true;


Skier   (2002-12-10 18:00:00) [7]

>MegaVoltik
А вариант с VK_Escape должен работать...
Попробуй поставить у формы KeyPreview := True


Skier   (2002-12-10 17:57:00) [8]

>MegaVoltik
> как сделать чтоб по нажатию <Enter> на модальной форме нажималась
> кнопка ОК

Самый простой вариант поставить у btnOK.Default := True


Наверх

Титульная страница Поиск, карта сайта Написать письмо