Вниз
Скачать: 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.971 c
15-1136629806
diwwww
2006-01-07 13:30
2006.01.29
Можно ли расчитать КПП?


15-1136754461
DillerXX
2006-01-09 00:07
2006.01.29
Клиническая смерть


3-1132923178
tamroF
2005-11-25 15:52
2006.01.29
MS SQL сервер - это Microsoft SQL?


15-1136373097
Sergey Masloff
2006-01-04 14:11
2006.01.29
Проблемы программизма как профессии. Временные ли?


2-1137096976
tech
2006-01-12 23:16
2006.01.29
Неясна причина ошибки




   Наверх