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

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

Переход [D6, Win95/98, WinME, WinXP]


Ag2002 ©   (2002-09-06 13:01:00) 

Люди подскажите вот на форму есть компоненты для ввод данных, я хочу чтобы при нажатии на Ентер фокус от текущего компонента перодовался следующему,по настройкам Tab order, как это сделать ?, конечно можно писать оброботчик события на нажатие клавиши сравнивать её с #13 и переходить на следующий, но если компонентов очень много, как это по рацональней сделать ?


Ag2002   (2002-09-07 12:45:00) [1]

Всё спфсибо получилось !!!


MBo   (2002-09-07 12:12:00) [2]

что-то ты мудришь.
Вот так у меня работает для Edit на ScrollBox

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
SelectNext(TEdit(Sender),true,true);
end;


Ag2002   (2002-09-07 12:01:00) [3]

MBo ScrollBox.SelectNext - Нет такой процедуры !!!


MBo   (2002-09-06 14:20:00) [4]

ScrollBox.SelectNext


Ag2002   (2002-09-06 13:51:00) [5]

MBo и как теперь быть ?


MBo   (2002-09-06 13:46:00) [6]

именно


Ag2002   (2002-09-06 13:39:00) [7]

Вобщем что-то оно не пашет ни как ?
Пробую через FindNextControl тоже не работает ?
чё делать ? Может это из-за того что компоненты расположены на ScrollBoх ?


Romkin   (2002-09-06 13:21:00) [8]

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_RETURN then
Form1.SelectNext(ActiveControl,True,True);
end;

и Form1.KeyPreview = true;


onix   (2002-09-06 13:21:00) [9]

Свойство формы KeyPreview = true.
В обработчике формы OnKeyPress вставь код

if (Key = #13) then begin
Key:=#0;
Perform(WM_NEXTDLGCTL,0,0);
end;

И все вроде. У меня работает.


Ag2002   (2002-09-06 13:20:00) [10]

А вот за это процедурку зпасибо, я не знал что такая есть :-(


MBo   (2002-09-06 13:14:00) [11]

SelectNext


Ag2002   (2002-09-06 13:11:00) [12]

Это долго, потом выбирать какой кампонент активет какой следующий, через кейс нехочу, кто нибудь др. способ знает ?


MBo   (2002-09-06 13:02:00) [13]

ну так всем нужным Edit один такой обработчик и присвой


Наверх

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