Вниз
Скачать: CL | DM;

Как сымитировать нажатие клавиши?   Найти похожие ветки 

 
Ell   (2006-01-15 15:29) [0]

Например, хочу, чтобы нажатие ENTER было эквивалентно нажатию TAB. Тогда в свойствах формы выставляю KeyPreview = true, перехватываю событие OnKeyPress, пишу if Ord(Key)=13 then...
А дальше? Как "нажать" табуляцию?

Небольшое пояснение: мне нужно, чтобы при заполнении полей TEdit по нажатии ENTER был переход на следующее поле так же как при табуляции.

Заранее спасибо.


 
Кефир87 ©   (2006-01-15 15:36) [1]

Key := #9??


 
Ell   (2006-01-15 15:53) [2]

Кефир87, компилятор Key := #9 принял, но эффекта нет - при нажатии раздаётся только бип...


 
VirEx ©   (2006-01-15 16:23) [3]

Установите свойство KeyPreview формы в True и используйте следующий обработчик события OnKeyPress.

procedure TMainForm.FormKeyPress(Sender: TObject; var Key: Char);
begin
if Key = #13 then begin
Key := #0;
PostMessage(Handle, WM_NEXTDLGCTL, 0, 0);
end;
end;


 
ASoft   (2006-01-15 16:23) [4]

Переход по Enter между компонентами формы.

procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if (Key = #13) then begin
 Key:=#0;
 Perform(WM_NEXTDLGCTL,0,0);
end;
end;


 
Ell   (2006-01-15 16:29) [5]

Спасибо. Всё получилось.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.024 c
2-1136978527
dr D
2006-01-11 14:22
2006.01.29
Как распарсить строку (WideString)?


15-1136912833
Gamlet_navernoe
2006-01-10 20:07
2006.01.29
Как жить в USA?


2-1136824870
ZeFiR
2006-01-09 19:41
2006.01.29
Как узнать, запустилась ли программа впервые?


3-1133301745
vladik
2005-11-30 01:02
2006.01.29
запрос на создание первичного ключа


15-1135260417
Piter
2005-12-22 17:06
2006.01.29
Лукьяненко - "Последний Дозор"




   Наверх