Подскажите коды ASC II клавиш 'backspase', 'tab', 'capslock', 'shift', 'ctrl', 'alt'.
Или скажите где взять таблицу с этими кодами.
Asc Ii, нужны коды ??? |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
Asc Ii, нужны коды ??? |
Chief |
Сообщение
#1
|
Гость |
Подскажите коды ASC II клавиш 'backspase', 'tab', 'capslock', 'shift', 'ctrl', 'alt'.
Или скажите где взять таблицу с этими кодами. |
volvo |
Сообщение
#2
|
Гость |
Смотри здесь - таблицы ASCII кодов.
'backspase' = chr(8) 'tab' = chr(9) А вот с остальными - сложнее... У них нет ASCII-кода, и анализировать состояние клавиш регистов ('shift', 'ctrl', 'alt' и 'capslock', 'numlock', 'scrollock') можно по 2-м байтам с адресами $0000:$0417 и $0000:$0418 Цитата Байт $0417 Биты 0 Нажат правый Shift 1 Нажат левый Shift 2 Нажат Ctrl 3 Нажат Alt 4 ScrollLock 5 NumLock 6 CapsLock 7 Ins (режим вставки/замещения) Байт $0418 Биты 0 1, если нажаты Ctrl+Shift (слева) 1 1, если нажаты Alt+Shift (слева) 2 зависит от клавиатуры 3 зависит от клавиатуры 4 1, если нажат ScrollLock 5 1, если нажат NumLock 6 1, если нажат CapsLock 7 1, если нажата клавиша Ins |
Chief |
Сообщение
#3
|
Гость |
volvo
Большое спасибо :D |
Dark |
Сообщение
#4
|
Знаток Группа: Пользователи Сообщений: 408 Пол: Мужской Репутация: 3 |
А на будущее - у меня есть Великие Всезнающие друзья
www.google.ru www.ya.ru спрашиваешь у них Таблица ASCII кодов они тебе ответят! -------------------- - Где я?
- Во тьме. - В какой тьме? - Во тьме твоего мозга. |
BRS |
Сообщение
#5
|
Новичок Группа: Пользователи Сообщений: 45 Пол: Мужской Репутация: 0 |
А я никогда никаких таблойдов не юзал
Просто быстренько писал прогу Код uses crt; var key : char; begin repeat key := readkey; write(ord(key)); readln; until key = 'q'; end. |
volvo |
Сообщение
#6
|
Гость |
BRS
Цитата А я никогда никаких таблойдов не юзал Просто быстренько писал прогу и с ее помощью находил, например, что просходит при нажатии Ctrl или Alt... Или клавиши управления курсором... Или F1-F12... |
APAL |
Сообщение
#7
|
Смотрю... Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: 6 |
Цитата и с ее помощью находил, например, что просходит при нажатии Ctrl или Alt... Или клавиши управления курсором... Или F1-F12... немного подправил uses crt; -------------------- |
volvo |
Сообщение
#8
|
Гость |
Ну, а чтобы посмотреть, как изменяется байт $0:$417 при нажатии регистровых клавиш, делаем так (для выхода - Esc):
Код uses crt; function binary(x: longint; numOfBits: byte): string; var bit, i: byte; s: string[32]; begin s := ''; for i := 0 to 31 do begin bit := (x shl i) shr (31); s := s + chr(ord('0') + bit) end; delete(s, 1, 32 - numOfBits); binary := s end; var m: byte absolute $0000:$0417; ch: char; begin clrscr; ch := #0; repeat writeln(m:10, ' ', binary(m, 8)); if keypressed then ch := readkey; until ch = #27; while keypressed do readkey end. |
Текстовая версия | 11.10.2024 16:31 |