| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Четене на F-клавиши http://mcu-bg.com/mcu_site/viewtopic.php?f=16&t=4252 |
Страница 1 от 1 |
| Автор: | Nekoj drug [ Вто Май 29, 2007 12:22 pm ] |
| Заглавие: | Четене на F-клавиши |
Здравейте! Искам да управлявам една програма посредством натискане на клавиш F5. Пробвах с getch(), scanf() gets(), но не става. Това, което научих от чужди форуми е, че при натискането на F5 от клавиатурата се изпраща първо една нула и после числото 63 мисля. Аз обаче не успявам да напиша работещ код |
|
| Автор: | zaphod [ Вто Май 29, 2007 1:27 pm ] |
| Заглавие: | |
ако си под дос, чети порт 61Н, ако си под виндовс, хвани съобщението WM_KEYDOWN |
|
| Автор: | ps66 [ Вто Май 29, 2007 1:41 pm ] |
| Заглавие: | |
int getbioskey(void) { union REGS regs; struct SREGS segregs; segread(&segregs); regs.h.ah = 0; int86x (0x16, ®s, ®s, &segregs); return regs.x.ax; } |
|
| Автор: | dan [ Вто Май 29, 2007 3:00 pm ] |
| Заглавие: | |
да разбирам ли, че горната функция ще върне "0-63"???? |
|
| Автор: | ps66 [ Вто Май 29, 2007 4:02 pm ] | |||||||||
| Заглавие: | ||||||||||
връща: AH = BIOS scan code AL = ASCII character повече: http://kernel.korea.ac.kr/interrupt/INT-16.HTM |
||||||||||
| Автор: | solenoid [ Пон Юни 04, 2007 8:59 pm ] |
| Заглавие: | |
Доколкото разбрах заданието ти трябва нещо такова с Два вложени getch-ара if(!getch()) { ch = getch(); switch(ch) { case 72: //еди какво си case 78: //еди що си } } |
|
| Автор: | ps66 [ Пон Юни 04, 2007 9:08 pm ] | |||||||||
| Заглавие: | ||||||||||
мъка, мъка |
||||||||||
| Автор: | solenoid [ Сря Юни 06, 2007 8:07 pm ] |
| Заглавие: | |
очевидно е, че се справяш с мъка дори с подобни парченца. Това не съм го измислил аз, и върши работа. Ако нещо не ти е ясно- питай. |
|
| Страница 1 от 1 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|