Реализация функций контроля и управления на базе Win32 API: Методические указания по выполнению лабораторного практикума, страница 6

Где – символ «+» означает использование функции столбца.


2 Лабораторная работа №2. Устройства ручного ввода

Целью данной работы является изучение основных функций Win32 API работы с клавиатурой и мышью Windows.

Пример использования функций в пользовательских приложениях приведен в демонстрационной программе lab_api.exe. Для визуального просмотра результатов выполнения данных функций требуется запустить программу lab_api.exe и выбрать опцию меню «Клавиатура» или «Мышь». В справочной системе приведено полное описание используемых функций, включая синтаксис функции. Вызов справочной системы производится из программы lab_api.exe через опцию меню «Справочная система» либо запуском программы lab_help.exe.

2.1 Назначение устройств ручного ввода и их виды

Основными устройствами ручного ввода в графических интерфейсах пользователя современных ПЭВМ являются клавиатура и мышь. С помощью данных устройств оператор осуществляет ввод команд с целью управления программой выполняемой на ПЭВМ. Кроме того, при помощи клавиатуры оператор вводит данные, а с помощью мыши выбирает данные из предлагаемого списка, т.е. клавиатура и мышь являются источниками данных и команд управления для выполняемой программы.

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

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

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

В настоящее время изготовители компьютерного оборудования предлагают большой выбор мышей разного типа. Мыши отличаются не только  внешним видом, но и способом подключения.

На данном этапе развития ПЭВМ интерфейс пользователя имеет диалоговый характер, где основными устройствами ввода являются клавиатура и мышь. Поэтому управление мышью и клавиатурой является приоритетной задачей.

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

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

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

§  GetKeyboardType – позволяет получить тип клавиатуры и количество функциональных клавиш;

§  GetKeyboardState – позволяет получить текущее состояние всех клавиш (клавиатуры и мыши);

§  GetKeyState – позволяет получить текущее состояние заданной клавиши;

§  GetAsyncKeyState – позволяет получить текущее и предыдущее состояние заданной клавиши.

Для мыши:

§  GetCursorPos – указывает положение курсора;

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

§  GetSystemMetrics – позволяет получить количество кнопок мыши и т. д.;

§  GetCaretBlinkTime – позволяет  получить время мерцания каретки;

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

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

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