Помогите решить проблему!Нужно определить каждую клавишу на клавиатуре через прерывание!В этой версии при нажатии на функциональные клавиши или стрелочки выдается сообщение о нажатии левого Шифта!Как это исправить?И как определить клвишы у которых скен коды больше 255(num look например)?
Очень странно... У меня все правильно работает, отображаются как все Lock-и, так и Fxx, и стрелочки... Только исправь скан-код NumLock и убери вторую строку:
Спасибо большое!А как прописать скан код для PrintSCR и Break.Я уже все пересмотрел, везде либо больше 255 или вообще нет!Подскажите код? А вот что выдает Паскаль при нажатии Стрелочек, в этой программе: Нажмите для просмотра прикрепленного файла Картинка прилогается.
Принажатии на DEl, INS, ..., будет тоже самое только с др. клавишей!(DEl, INS, ..., соответственно вместо стрелочек).Получается что он использует один скан-код для несколька клавиш?
volvo
17.04.2007 13:33
Код PrintScreen должен быть = 55, а код Break у меня совпадает с кодом ScrollLock, потому что это физически одна клавиша, для моей клавиатуры надо анализировать состояние FLock ...
TarasBer
18.04.2007 1:26
Там ещё как то влияет случай когда scan=224. В общем, посмотрите мой вариант процедуры Ntw09. Я там правда для экономии памяти битовыми операциями увлёкся, но, надеюсь, разберётесь. И ещё, я не понял насчёт строчки Scan = 328... По-моему, scan не может оказаться больше 255, хотя бы потому, что ему присваивается Port[$60], а не PortW[$60]. А чтоб понять какая клавиша что значит - напишите тестовую программку.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.