Форум: "Основная";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];
ВнизDBGridEh Найти похожие ветки
← →
Elast (2004-04-29 14:47) [0]Уважаемые мастера! Где-то ошибка - вроде-бы переключается клавиатура:
Нажимаю клавишу "т"
procedure DBGridEh1TegKeyPress(Sender: TObject; var Key: Char);
begin
showmessage("press " + (key)); ---> Сначала здесь т
Key := "";
end;
procedure DBGridEh1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
showmessage("Down" + chr(key)); ---> Потом здесь N
Key := 0;
end;
← →
Vlad Oshin © (2004-04-29 14:48) [1]
> KeyDown
вроде всегда латинские коды дает
← →
Elast (2004-04-29 15:09) [2]Для меня это новость. А как отловить нажатие рус?
← →
Vlad Oshin © (2004-04-29 15:13) [3]
> Elast (29.04.04 15:09) [2]
можть отказаться от кейдауна в пользу чего-то другого
или вычислив язык ввода по соответствию букв на клавиатуре
← →
WebErr © (2004-04-29 15:36) [4]
> Elast (29.04.04 15:09) [2]
Для меня тоже!
У меня всё по русски прекрасно выдаёт в наследнике того же TDBGridEh!
← →
Elast (2004-04-29 16:06) [5]Ничего по русски не выдает и я не понимаю
1.почему если есть onKeyPress, то нет onKeyDown
2.как узнать какая раскладка клавы сейчас и как ее переключить
← →
WebErr © (2004-04-29 16:17) [6]
> Elast (29.04.04 16:06) [5]
Просто OnKeyDown указывает, какая клавиша нажата, а не какой символ введён, то есть надо клавишу узнать - используй OnKeyDown, а надо узнать символ - используй OnKeyPress.
Раскладка клавы - это Вам знать не нужно, разве только интереса ради...
← →
Vlad Oshin © (2004-04-29 17:20) [7]
OnKeyDown
> какая клавиша нажата
а точнее код ее, Вы же пишите
> showmessage("Down" + chr(key));
Потому как в OnKeyDown передается ВИРТУАЛНЫЙ КОД КЛАВИШИ, именно клавиши, а не символа (и символы, и стрелочки, и F1..F12, и ... А если нужен именно СИМВОЛ, то вам нужно OnKeyPress, сюда попадают именно символы, оттранслированные с учетом языка и раскладки.
> а надо узнать символ - используй OnKeyPress
вполне можно и OnKeyDown, если OnKeyPress не может быть использован по каким либо причинам
> Раскладка клавы - это Вам знать не нужно, разве только интереса
> ради...
для этого(см выше) и надо
Но Ваш вариант с OnKeyPress, конечно, проще и предпочтительнее
автору
GetKeyboardLayout посмотрите
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.05.16;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.033 c