Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Клавиатурный вопрос... [D4, D5, 95/98, ME, NT4, 2000, XP, 2003]


C@N ©   (2006-07-20 15:04:00) 

Господа!!!
На сколько я понимаю... клавиатура шлет в компьютер сигналы, которые уже системой преобразуются в руские, английские символы, ентеры, эскейпы, табуляции и прочее...
Вопрос если это так, то как читать эти сигналы??? а то столкнулся с проблемой "экранной клавиатуры", но мне надо выводить спецсимволы... типа клавише [Ф/A] соответствует функция...уж больно громоздко и коряво выходит, да еще и глючит, если в системе кроме русской и английской раскладок стоит еще какая-нить....


C@N   (2006-07-22 13:56:00) [1]

Вот смотрите!!! это должно работать и на нажатии кнопок!!!(клава) и на нажатии батонов на форм1 (тама я кнопки в виде клавных выстроил...)
вот мне нужно узнать какая кнопка нажата (на клавиатуре) потому как другану пишу прогу(а он за бугром в районе аравийского п-острова), а в евоной конторе права обрезаны, чтоб поставить русскую расскладку, хотя по руски все нормально отображается...(странно) а в конторе у него несколько раскладок стоит... хочется что-то универсальное...не зависимое от раскладки клавиатуры...
на английскую раскладку я прогу научил впринципе... вот сейчас до чего-нить универсального добить хочется, тк при разных раскладках к конкретной кнопке разный символ прицеплен(((


>  А OnKeyDown/Up - виртуальные коды клавиш.
а по подробнее))) плииз)))


DrPass   (2006-07-22 12:06:00) [2]


> S46E ©   (22.07.06 10:00) [6]

> (Вместо KeyPress можно KeyDown:)

Не можно, а нужно. Событие OnKeyPress обрабатывает коды символов, т.е. зависит от текущей раскладки. А OnKeyDown/Up - виртуальные коды клавиш.

> C@N ©   (22.07.06 09:35) [5]
> а поподробнее объяснитепожалуйса))) чайнику...

А что непонятного? КАк щелкнуть два раза по строчке OnKeyDown в Object Inspector?


Ketmar   (2006-07-22 10:30:00) [3]

вопрос неясен. "экранная клавиатура" -- в смысле пишется такая же, как у винды -- для ввода символов? или "жмём клавишу, на битмапке клавиатуры она рисуется нажатой"? или ещё что? телепатор не телепатит...


S46E   (2006-07-22 10:00:00) [4]

procedure TForm1.sendKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then ShowMessage('Вы нажали Enter');
end;

Каждая клавиша имеет свой номер.
(Вместо KeyPress можно KeyDown:)


C@N   (2006-07-22 09:35:00) [5]

а поподробнее объяснитепожалуйса))) чайнику...


DrPass   (2006-07-20 16:41:00) [6]


> дык мне надо независимо от раскладки...

см.

> DrPass ©   (20.07.06 15:20) [1]


C@N   (2006-07-20 15:44:00) [7]

этот пост наверно в API надо было кинуть...


C@N   (2006-07-20 15:43:00) [8]

дык мне надо независимо от раскладки...
на клавиатуре 86 или 101 (это помоему аж с 1986года) клавиш - стандартно!!! вот как понять там-же система к примеру а=1 б=2


DrPass   (2006-07-20 15:20:00) [9]

Думаю, читать сканкоды необязательно - события OnKeyDown будет достаточно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо