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

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

Передача фокуса компоненту [D7, WinXP]


Tempo ©   (2004-07-03 16:00:00) 

Только заметил одну неприятную вещь, от которой не могу избавиться.
Есть на форме компонент, скажем Edit1, и есть еще одна кнопка. Нужно при нажатии кнопки Enter на компоненте Edit1 передать фокус кнопке.
Пишу:
procedure Tadd_project.edit1KeyDown(Sender: TObject;
 var Key: Word; Shift: TShiftState);
begin
if Key=13 then FindNextControl(Sender as TWinControl,true,true,false).SetFocus;
end;

Все работает, НО  при нажатии Enter издается неприятный звук (щелчек, как при ошибки Windows). Как от этого избавиться?
И еще как при нажатии кнопки ESC на любом компоненте формы, чтобы она закрывалась?


Tempo   (2004-07-03 17:01:00) [1]

Огромное спасибо, как все оказалось просто. Я стормозил.


TUser   (2004-07-03 16:51:00) [2]

или actions


Семен Сорокин   (2004-07-03 16:23:00) [3]

при нажатии Enter издается неприятный звук (щелчек, как при ошибки Windows). Как от этого избавиться?
if Key=13 then FindNextControl(Sender as TWinControl,true,true,false).SetFocus;
Key := 0
И еще как при нажатии кнопки ESC на любом компоненте формы, чтобы она закрывалась?
Form.KeyPreview = true
в onKeyDown
if Key = VK_ESCAPE then
Close
или если есть кнопка отвечающая за закрытие - выставить у нее св-во Cancel = true


Наверх

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