| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Нужна функция ? |
| Автор: Skorp 9.2.2003, 18:19 |
| Вот я решил под с дос компилером побаловаться. Но возникла проблема. Мне нужна функция которая бы проверя нажата ли клавиша клавы и возвращала ее значение, но не ждала нажатия. |
| Автор: acp 9.2.2003, 19:24 | ||
В своих старых прогах посмотрел
|
| Автор: Skorp 10.2.2003, 05:03 |
| Я попробовал функцию bioskey(1), но она не очень то хорошо и работает. сначало она возвращает 0, а после первого нажатия клавиши все время ее значения. ? Может можно обнулить ее результат что бы она заново могла считать . ? Или функция получше может есть |
| Автор: Alex101 10.2.2003, 06:44 | ||
Что-то типа того:
Буфер будет очищаться |
| Автор: Skorp 12.2.2003, 17:42 |
| Может кто занет как в досе сделать режим более чем на 640х480(16 цветов) Например если бы 1024-768 256 или (32б) |
| Автор: Alex101 12.2.2003, 18:37 | ||
| Использовать прерывание BIOS 10h. Можно устанавливать различные режимы, но тут все зависит от видеоадаптера. Вот кусочек кода - процедура установки расширенного видеорежима.
Но при выводе на экран есть некоторые траблы - вся область видеопамяти в ДОС недоступна, только фрагментами по 64 КБ (в реальном режиме), универсальные способы переключения банков медленные, а для каждого конкретного адаптера они азличны... |
| Автор: neutrino 14.2.2003, 20:32 |
| Hm ... if (kbhit()) // esli klavishu najali to ... P.S. Bufer klavy mojno otchistit' funkciei' getch() Naprimer: while (!kbhit()&&getch()=='q') { cout<<endl<<"najmite klavishu Q"; } |
| Автор: brb 15.2.2003, 06:50 |
| Преимущество bioskey() в том, что она возвращает скан-коды клавишь, т.е. я могу ей отловить все что угодно, а kbhit() нет. Под ДОС bioskey() во всех отношениях лучше, а вот под винды...это я не в курсах |
| Автор: Skorp 16.2.2003, 17:03 |
| Может кто-нибудь знает как в c++ под дос мышь инициализировать в режиме 1024х768 256color и выше. Я инициализирую её по стандартному но она видна на экране только в 640х480 16color и ниже. |
| Автор: Baa 16.2.2003, 19:35 |
| КАЖДЫЙ НОВЫЙ ВОПРОС В ОТДЕЛЬНУЮ ТЕМУ |