8 / 8 / 2
Регистрация: 16.03.2011
Сообщений: 257
|
|
1 | |
Обработка нажатия клавиш-стрелок18.01.2012, 19:19. Показов 7630. Ответов 12
Метки нет (Все метки)
Добрый вечер, я делаю пошаговую демонстрационную программу различных методов сортировок в консоли, но не знаю как сделать так, чтобы при нажатии клавиши "вправо" или "влево"(без "enter"!!!) показывался следующий или предыдущий слайд, подскажите пожалуйста. Просто кроме "cin >> .." и "getline(cin, ..)" я не знаю как получить информацию с клавы, мне необходимо именно без enter.
0
|
18.01.2012, 19:19 | |
Ответы с готовыми решениями:
12
Не обрабатываются нажатия клавиш стрелок Обработка нажатия клавиш Обработка нажатия клавиш Обработка нажатия клавиш OPENGL |
31 / 31 / 16
Регистрация: 30.11.2010
Сообщений: 81
|
|
18.01.2012, 19:35 | 3 |
Вам поможет функция ввода с эхом getche()
1
|
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
|
|
18.01.2012, 19:39 | 4 |
Это не стандартная функция. Уже лучше getch (), зачем эхо.
Только не перемешивайте с cin, метод буферизации у них разный. Вообщем почитайте, может то что ищете http://ru.wikipedia.org/wiki/Conio.h
1
|
199 / 142 / 57
Регистрация: 06.07.2011
Сообщений: 300
|
|
18.01.2012, 19:39 | 5 |
используйте getch();
1
|
31 / 31 / 16
Регистрация: 30.11.2010
Сообщений: 81
|
|
18.01.2012, 19:44 | 6 |
go, почему нестандартная? вся разница между getch() и getche() в том, что у первой нету эха, а у второй есть. в любом случае придется подключать заголовочный файл <conio.h>. А выбор конкретной функции уже зависит от того, понадобится ли
fenix117, вывод информации о том, какая клавиша была нажата или нет
1
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,679
|
|
18.01.2012, 20:13 | 8 |
Что-то я понять не могу, так у тебя что за программа-то? Если консольная, это один вопрос, если оконая, то другой вопрос. Во втором случае надо послать окну программы сообщение, на которое она должна определённым образом реагировать.
1
|
Жарю без масла
867 / 749 / 225
Регистрация: 13.01.2012
Сообщений: 1,702
|
||||||
18.01.2012, 23:04 | 9 | |||||
не пробовали использовать stdio, отключив буферизацию?
0
|
8 / 8 / 2
Регистрация: 16.03.2011
Сообщений: 257
|
||||||
19.01.2012, 13:56 [ТС] | 11 | |||||
Ну так намного красивее и удобнее).
Добавлено через 1 час 16 минут Какая то непонятка появилась с этим getch() Я так понял функция возвращает кодировку символа, в коде примерно следующее:
Зацикливается на последней строчке while (t != 48); Нажимаю шаг с заходом (VS2010), моргает и остается на той же строчке с теми же локальными переменными. В чем проблема?
0
|
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
|
|||||||||||
19.01.2012, 14:06 | 12 | ||||||||||
fenix117, мы не модем знать, что находится в буфере, а getch () из него читает
Почистите буфер
лучше так писать везде
1
|
8 / 8 / 2
Регистрация: 16.03.2011
Сообщений: 257
|
|
19.01.2012, 16:25 [ТС] | 13 |
Не получается(, Я его и перед getch() и после него ставил данную конструкцию, не помогает.
Добавлено через 1 час 49 минут Уфф Разобрался) Правда не понял в чем была проблема. Просто сделал while (t != 48) с предусловием и заработало.
0
|
19.01.2012, 16:25 | |
19.01.2012, 16:25 | |
Помогаю со студенческими работами здесь
13
Обработка нажатия клавиш (Win32 Console Application) Потоки:обработка нажатия клавиш; вычисления,прорисовка Нажатия клавиш Нереагирование на нажатия клавиш Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |