Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.29;
Скачать: 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 вся ветка

Текущий архив: 2006.01.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.06 c
15-1136506903
ronyn
2006-01-06 03:21
2006.01.29
Windows XP SP2 & Bluetooth


15-1136355559
Думкин
2006-01-04 09:19
2006.01.29
Новый год. Чувство праздника.


2-1137279931
The Sound
2006-01-15 02:05
2006.01.29
Звук, через динамик ПК.


2-1137070317
irishka001
2006-01-12 15:51
2006.01.29
Проблема с задержкой


15-1136785963
begin...end
2006-01-09 08:52
2006.01.29
С Днём рождения! 9 января