Вниз
Скачать: 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.026 c
6-1124085302
iskatel
2005-08-15 09:55
2006.01.29
Подключение удаленного доступа к сети / отключение


2-1136894042
Вт
2006-01-10 14:54
2006.01.29
Как программно показать файл справки с расширением chm


2-1137152908
SarDoX
2006-01-13 14:48
2006.01.29
IE и delphi


15-1136883578
Чапаев
2006-01-10 11:59
2006.01.29
SQL для MDB


9-1124299115
Malkavian
2005-08-17 21:18
2006.01.29
Что-то плохое происходит... :(




   Наверх