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

Тип запрашиваемой информации или устанавливаемых параметров может принимать одно из следующих основных значений: SPI_GETBEEP запрашивает значение типа BOOL предупредительного звукового сигнала. wParam=0; lpvParam = указатель на BOOL;  SPI_SETBEEP устанавливает значение типа BOOL предупредительного звукового сигнала. wParam=BOOL; lpvParam=NULL;  SPI_GETBORDER запрашивает значение определяющее ширину бордюра окна. wParam=0; lpvParam = указатель на int;  SPI_SETBORDER устанавливает значение определяющее ширину бордюра окна. wParam=int; lpvParam=NULL;  SPI_GETFASTTASKSWITCH запрашивает положение переключателя быстрой задачи вкл./выкл. wParam=0; lpvParam = указатель на BOOL;  SPI_SETFASTTASKSWITCH устанавливает положение переключателя быстрой задачи вкл./выкл. wParam=BOOL; lpvParam=NULL;  SPI_GETGRIDGRANULARITY запрашивает текущее значение размера ячейки сетки рабочего стола. wParam=0; lpvParam = указатель на int;  SPI_SETGRIDGRANULARITY устанавливает текущее значение размера ячейки сетки рабочего стола. wParam=int; lpvParam=NULL;  SPI_GETKEYBOARDDELAY запрашивает задержку повторения клавиатуры. wParam=0; lpvParam = указатель на int;  SPI_SETKEYBOARDDELAY устанавливает задержку повторения клавиатуры. wParam=int; lpvParam=NULL;  SPI_GETKEYBOARDSPEED запрашивает скорость повторения клавиатуры. wParam=0; lpvParam = указатель на WORD;  SPI_SETKEYBOARDSPEED устанавливает скорость повторения клавиатуры. wParam=WORD; lpvParam=NULL;  SPI_GETMOUSE запрашивает скорость перемещения мыши. wParam=0; lpvParam = указатель на массив int, где lpiMouse[0] - порог1, lpiMouse[1] - порог2, lpiMouse[2] - скорость;  SPI_SETMOUSE устанавливает скорость перемещения мыши. wParam=0; lpvParam = указатель на массив int, где lpiMouse[0] - порог1, lpiMouse[1] - порог2, lpiMouse[2] - скорость;  SPI_GETSCREENSAVEACTIVE запрашивает значение типа BOOL о включенном или выключеном хранителе экрана. wParam=0; lpvParam = указатель на BOOL;  SPI_SETSCREENSAVEACTIVE устанавливает значение типа BOOL включенного или выключеного хранителя экрана. wParam=BOOL; lpvParam=NULL;  SPI_GETSCREENSAVETIMEOUT запрашивает время в секундах через которое срабатывает хранитель экрана. wParam=0; lpvParam = указатель на int;  SPI_SETSCREENSAVETIMEOUT  устанавливает время в секундах через которое срабатывает хранитель wParam=int; lpvParam=NULL;  SPI_LANGDRIVER идентификатор языкового драйвера. wParam=0; lpvParam = указатель на строку char ограниченной нулевым элементом;  SPI_SETDESKWALLPAPER устанавливает имя файла обоев рабочего стола. wParam=0; lpvParam = указатель на строку char ограниченной нулевым элементом;  SPI_SETDOUBLECLICKTIME устанавливает время двойного нажатия клавиши мыши в милисекундах. wParam=int; lpvParam=NULL;  SPI_SETDOUBLECLKHEIGHT установка высоты прямоугольника в котором срабатывает двойное нажатие. wParam=int; lpvParam=NULL;  SPI_SETDOUBLECLKWIDTH установка ширины прямоугольника в котором срабатывает двойное нажатие. wParam=int; lpvParam=NULL;  SPI_SETMOUSEBUTTONSWAP установка реверса кнопок мыши. wParam=BOOL; lpvParam=NULL; 

BOOL SetKeyboardState(lpbKeyState) LPBYTE lpbKeyState; // указатель на массив, устанавливающий состояние клавиатуры

устанавливает текущее состояние клавиатуры. Массив размером 256 байт соответствует состоянию каждой из 256 клавиш виртуальной таблицы. Если старший бит установлен, то клавиша нажата. Если младший бит виртуальных клавиш "NumLock", "CapsLock" или "ScrollLock" установлен, то данные клавиши задействованы, о чем свидетельствует соответствующая индикация. Функция возвращает true при корректном ее завершении.

int ShowCursor(bShow) BOOL bShow; // показать или скрыть курсор

показывает и скрывает курсор. Функция возвращает знаковое значение - счетчик. Если счетчик больше или равен нулю, то курсор виден, иначе курсор скрыт. Таким образом, если n-раз вызвать функцию с параметром false скрывающую курсор, чтобы показать курсор нужно также n-раз вызвать функцию с параметром true.

BOOL SwapMouseButton(fSwap) BOOL fSwap; // флаг реверсирования