Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.07.2012, 10:41   #1
monolit111
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 95
По умолчанию ф-я для glutKeyboardFunc

Салют!
ВОзникает некоторая проблема при использовании этой функции...
коды клавиш не соответствуют клавишам на клавиатуре(символьные, естест-но, ка ни странно, но цифровые полностью совпадают).
Заголовок:
Код:
void KeyFunc(unsigned char key, int x, int y)
проверяю так:
Код:
switch(key) {
case 'd': //тут что-то и т.д.

}
Почему коды символьных клавиш не совпадают то?
в glutSpecialFunc все работает, а тут...
Спасибо за внимание...

P.S.
Проверял через консоль, что ж там получается в key, так там совсем 'левые' символы выводятся(т.е. не те, которые должны были б, и, опять же как ни странно, некоторые совпадают, но таких мало..)

Последний раз редактировалось monolit111; 07.07.2012 в 10:44.
monolit111 вне форума Ответить с цитированием
Старый 07.07.2012, 12:42   #2
ArmanPrestige
Главное желание.
Форумчанин
 
Регистрация: 28.11.2011
Сообщений: 122
По умолчанию

скинь кусок кода, как ты считываешь символ, с помощью какого оператора
Я могу, Я хочу, Я буду!
ArmanPrestige вне форума Ответить с цитированием
Старый 07.07.2012, 13:41   #3
monolit111
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 95
По умолчанию

Я его не читаю, он передается в указанную мной функцию:
Код:
void KeyFunc(unsigned char key, int x, int y)
Она активируется след. образом:
Код:
glutKeyboardFunc(KeyFunc);
ключ key то приходит, но как он связан с символьными клавишами клавиатуры? Обычный выбор, if (key=='A') не работает, ибо слишком мало символов совпадают...такое ощущение, что так какая-то другая символьная таблица...
monolit111 вне форума Ответить с цитированием
Старый 07.07.2012, 14:57   #4
ArmanPrestige
Главное желание.
Форумчанин
 
Регистрация: 28.11.2011
Сообщений: 122
По умолчанию

таблица ascii http://ascii.org.ru/ascii.pdf
для буквы D значит получится if(key == 68) и т.д.
удобная штука http://ascii.org.ru/#ASCII converter
Я могу, Я хочу, Я буду!

Последний раз редактировалось ArmanPrestige; 07.07.2012 в 15:07.
ArmanPrestige вне форума Ответить с цитированием
Старый 07.07.2012, 15:34   #5
monolit111
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 95
По умолчанию

Это все ясно, но почему не работает
Код:
if key=='d'
, к примеру? Там же вроде тоже ASCII таблица символов?или различия между signed char / unsigned char, т.е. при вызове'd' вызывается знаковый тип?
monolit111 вне форума Ответить с цитированием
Старый 08.07.2012, 23:05   #6
monolit111
Пользователь
 
Регистрация: 14.09.2011
Сообщений: 95
По умолчанию

все еще актуально...
monolit111 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Какие есть компоненты для Delphi для создания такого интерфейса? Marsel737 Свободное общение 7 24.09.2011 18:25
glutkeyboardfunc в Linux Romires007 Qt и кроссплатформенное программирование С/С++ 0 15.08.2011 13:53
Включить двойную буферизацию для формы в VBA для MsAccess 2003 dplz Microsoft Office Access 0 16.05.2010 17:00
Насколько можетбыть коротким код для решения задчки для Экселя? saga Microsoft Office Excel 0 04.04.2009 13:35
Бесплатный движок для САЙТА на Java Script для Бесплатных Хостингов антигерой HTML и CSS 0 15.04.2007 21:39