Функции Win32 API для клавиатуры и мыши

Большинство функций Win32 API связанных с устройствами ручного ввода осуществляют проверку поступающей информации, являясь, таким образом, информационными. К основным информационным функциям устройств ручного ввода можно отнести следующие ниже перечисленные функции.

Для клавиатуры:

· GetKeyboardType;

· GetKeyboardState;

· GetKeyState;

· GetAsyncKeyState.

Для мыши:

· GetCursorPos;

· GetKeyboardState (для кнопок мыши);

· GetSystemMetrics;

· SystemParametersInfo (для получения скорости перемещения курсора).

Получаемая информация предназначена как для реагирования программы на действия оператора, так и для получения типа установленных устройств. Приведенные функции позволяют получить информацию о:

· типе клавиатуры;

· количестве функциональных клавиш клавиатуры;

· текущем состоянии всех клавиш (клавиатуры и мыши);

· текущем состоянии заданной клавиши;

· текущем и предыдущем состоянии заданной клавиши;

· положении курсора;

· подключении мыши в системе;

· количестве кнопок мыши;

· скорости перемещения курсора;

· и т.д.

Важнейшей информацией для интерфейса пользователя большинства приложений является состояние клавиш и положение курсора мыши на экране. По данной информации принимается решение о связи между оператором и выполняемой программой на ПЭВМ.

Управляющие функции предназначены для настройки клавиатуры и мыши. Например, включение или выключение действие клавиш: "NumLock", "CapsLock" и "ScrollLock". С помощью функций управления мышью программа настраивает курсор, задавая форму отображения, координаты расположения курсора и скорость перемещения мыши. Основные управляющие функции для устройств ручного ввода представлены ниже.

Для клавиатуры - SetKeyboardState.

Для мыши:

· ShowCursor;

· SwapMouseButton;

· ClipCursor;

· SetCursorPos;

· SystemParametersInfo (для установки скорости перемещения курсора).

В приложениях на базе Win32 потребность использования функций управления мышью возрастает. Это объясняется тем, что развитие операционных систем Windows направленно на упрощение работы оператора. Управление устройствами ручного ввода с помощью приведенных функций сводится к следующему:

· задать состояние клавиатуры;

· показать/скрыть курсор;

· поменять функции кнопок мыши между собой;

· ограничить перемещение курсора заданной областью;

· задать положение курсора;

· задать скорость перемещения курсора.

Как правило, данные функции используются в программах в процедурах настройки устройств ручного ввода. Исключение составляет функция ограничения перемещения курсора в заданной области, так как область динамически изменяется в процессе выполнения программы.

Управление вводом с клавиатуры получило новое направление развития, вследствие необходимости распределения вводимой информации между различными потоками в многозадачных системах. Так как функции управления потоками ввода захватывают более широкую область, чем управление клавиатурой, они не будут рассмотрены.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: