Обнаружение нажатия клавиши во время выполнения в консольном приложении - PullRequest
1 голос
/ 01 августа 2011

Я использую VC ++ (VS2008 Express) для разработки консольного приложения C ++ (ну, не совсем так: из консоли открывается другое окно (предоставляется сторонней библиотекой, которая не предоставляет API для обработки событий нажатия клавиш на образе) который отображает поток с камеры. Я новичок в программировании Windows. Мне нравится обнаруживать нажатие функциональной клавиши (скажем, F1) и изменять некоторые параметры камеры, такие как ее яркость в реальном времени, то есть когда клавиша F1 нажал, я хотел бы видеть, что поток камеры становится ярче. Я доволен API камеры. Эта часть будет в порядке, но я не знаю, как определить события нажатия определенной клавиши, например, функциональной клавиши.

1 Ответ

1 голос
/ 01 августа 2011

Попробуйте прочитать о системе сообщений Windows.Вас интересуют WM_KEYDOWN и WM_KEYUP для начала: http://msdn.microsoft.com/en-us/library/ms646280(VS.85).aspx Большая часть обнаружения нажатия клавиш, которая может вам понадобиться, доступна через этот API.

Список кодов клавиш: http://msdn.microsoft.com/en-us/library/dd375731(v=VS.85).aspx

Если этого вам недостаточно (возможно, потому, что вам нужен больший контроль), следуйте документации по DirectInput (обычно полезной на уровне «игр»).

...