![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Закипел [D6, WinXP]
ava © (2002-09-21 22:50:00)вопрос простой обрабатываю нажатие клавиатуры
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
If Key = #13 THEN
Perform(WM_NEXTDLGCTL, 0, 0); {переход к следующему окну}
end;
все работает
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
If Key = #(37-40) THEN
Perform(WM_NEXTDLGCTL, 0, 0); {переход к следующему окну}
end;
не работает?????
Song (2002-09-22 19:44:00) [1]2Николай Быков © (22.09.02 19:37)
Пишешь in и на нём Ctrl+F1, дальше читаешь и поймёшь, что он делает.
2ava © (22.09.02 19:18)
IF Key in [#37..#40] then ...
Николай Быков (2002-09-22 19:37:00) [2]А чего делает оператор in ?
Song (2002-09-22 19:23:00) [3]Дык тогда и применяйте оператор in
ava (2002-09-22 19:18:00) [4]В общем-то If Key = #(37-40) имелось ввиду любое из этих значение If Key = #37 и т. д.
а решение нашлось
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_down THEN
begin
Perform(WM_NEXTDLGCTL, 0, 0);
end;
спасибо за внимание к проблеме
Kotka (2002-09-22 01:14:00) [5]If Key = #((37-40)*(-1)+10) :-)
MBo (2002-09-21 23:28:00) [6]If Key = #(37-40)
Это настораживает ;)
Key -3 ?????