Форум: "Основная";
Текущий архив: 2002.06.24;
Скачать: [xml.tar.bz2];
ВнизПередача фокуса ввода другому элементу нажатием Enter Найти похожие ветки
← →
Miss (2002-06-10 12:46) [0]Здравствуйте! Пожалуйста помогите! В одной из форм проекта располагается несколько DBEdit, при нажатии Enter фокус ввода передается следующему компоненту, например:
procedure TfmDrPRikaz.DBEdit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
DBEdit22.SetFocus;
end;
Нажатием кнопки на этой форме открывается еще одна форма, которая тоже содержит несколько DBEdit, но аналогичный код в обработчиках события OnKeyPress не работает, т.е. фокус ввода не передается другому элементу нажатием клавиши Enter?
← →
oss (2002-06-10 12:55) [1]на keyup
if #13=chr(key) then
FindNextControl(sender as TWinControl,true,false,false).setfocus
else ch:=true;
← →
oss (2002-06-10 12:57) [2]вернее можешь цеплять куда угодно, главное Enter отлови
← →
oss (2002-06-10 12:57) [3]вернее можешь цеплять куда угодно, главное Enter отлови
и ch тебе тоже не надо :))
← →
Yuri-7 (2002-06-10 12:57) [4]Попоробуй обработку посадить на OnEnter
← →
Producer (2002-06-10 13:34) [5]2 Yuri-7: Ну и причем здесь событие OnEnter?
Человек имел ввиду нажатие кнопки Enter.
Теперь 2 Miss:
Делаешь общий обработчик события onKeyPress для нескольких компонентов (для тех, нажатие Enter на которых должно приводить к передаче фокуса ввода):
procedure TMyForm.EnterPress(Sender: TObject;
var Key: Char);
begin
if Key = #13 then
begin
Key := #0; // чтобы не "пикал"
SelectNext(Sender as TWinControl, true, true);
end;
end;
← →
Song (2002-06-10 13:35) [6]TForm.KeyPreview в True
А дальше обрабатьывай TForm.onKeyDown
← →
Miss (2002-06-11 10:37) [7]Thank! Вариант на KeyUp работает, а ch и правда не нужно
← →
Sava (2002-06-11 11:26) [8]
Можно еще модернезировать предложение Producer :
1. У формы KeyPreview := true;
2.
Procedure Tform1.FormKeyPress(Sender: TObject, var key: char);
begin
if key = #13 then
begin
key:=#0;
perform(wm_nextdlgctl,0,0);
end
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.24;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.008 c