GetDoubleClickTime • Windows 98 • Windows 2000 |
|||||||
Описание |
Функция GetDoubleClickTime выбирает текущее время двойного щелчка для мыши. Двойной щелчок — это два последовательных щелчка кнопкой мыши, причем второй щелчок происходит в течение определенного времени после первого. Время двойного щелчка — максимальная продолжительность времени в миллисекундах, которое может пройти между первым и вторым щелчком, чтобы щелчок считался двойным. Эта функция применяется перед вызовом функции SctDoubleClickTime и позволяет узнать текущее значение времени двойного щелчка, прежде чем его изменить. |
||||||
Синтаксис |
UINT GetDoubleCHckTime( VOID ) |
||||||
Параметры |
Эта функция не имеет параметров. |
||||||
Возвращаемое значение |
|||||||
UINT. Текущее время двойного щелчка в миллисекундах. |
|||||||
Включаемый файл |
winuser.h |
||||||
См. также |
SetDoubleClickTime |
||||||
Соответствующие сообщения |
|||||||
WM_LBUTTONDBLCLK, WM_MBUTTONDBLCLK, WM_RBUTTONDBLCLK |
|||||||
Пример |
В следующем примере происходит обнаружение двойных щелчков левой кнопкой мыши и отображение окна сообщения при получении двойных щелчков. Когда пользователь выбирает пункт меню Test!, время двойного щелчка увеличивается на 0,1 секунды. Для получения двойных щелчков к определению стиля окна функции WinMain должен быть добавлен стиль CS_DBLCLKS. Обратите внимание, что время двойного щелчка переустанавливается в первоначальное значение при выходе из приложения. |
||||||
См. \local-sources\chap09\09-12.txt |
|||||||
GetlnputState • Windows 98 • Windows 2000 |
|||||||
Описание |
Функция GetlnputState определяет, имеются ли в очереди сообщений вызывающей нити сообщения кнопок мыши или клавиатуры. Функция GetlnputState применяется при продолжительных операциях для проверки того, нажал ли пользователь клавишу клавиатуры или кнопку мыши. Это может означать, что пользователь хочет прервать процедуру. Поскольку функция GetlnputState не извлекает сообщения из входной очереди, они в ней остаются для обработки нитью. |
||||||
Синтаксис |
BOOL GetInputState( VOID ) |
||||||
Параметры |
Эта функция не имеет параметров. |
||||||
Возвращаемое значение |
BOOL. Если очередь содержит одно или несколько новых сообщений мыши или клавиатуры, возвращаемое значение — TRUE; в ином случае возвращаемое значение — FALSE. |
||||||
Включаемый файл |
winuser.h |
||||||
См. также |
GetQueueStatus |
||||||
Соответствующие сообщения |
|||||||
WM_KEYDOWN, WM_KEYUP, WMJTIMER, WM_LBUTTONDOWN, WM_RBUTTONDOWN |
|||||||
Пример |
В следующем пример устанавливается таймер с выдержкой времени в одну секунду. При отправке каждого сообщения WM_TIMER функция GetlnputState проверяет, ожидают ли обработки события ввода мыши или клавиатуры в очереди сообщений приложения. |
||||||
См. \local-sources\chap09\09-13.txt |
|||||||
GetKeyboardLayout • Windows 98 • Windows 2000 |
|||||||
Описание |
Функция GetKeyboardLayout выбирает активную раскладку для указанной нити. Если параметр нити установлен в NULL, функция возвращает раскладку для активной нити. |
||||||
Синтаксис |
HKL GetKeyboardLayout( DWORD idThread ) |
||||||
Параметры |
|||||||
idThread |
DWORD. Дескриптор нити, которой должен быть направлен запрос, или нуль, для обозначения текущей нити. |
||||||
Возвращаемое значение |
HKL. Дескриптор раскладки клавиатуры региональной установки ввода для нити. |
||||||
Включаемый файл |
winuser.h |
||||||
См. также |
GetKeyboardLayoutList, GetKeyboardLayoutName, LoadKeyboardLayout |
||||||
Пример |
См. пример для функции LoadKeyboardLayout. |
||||||
GetKeyboardLayoutList • Windows 98 * Windows 2000 |
|||||||
Описание |
Функция GetKeyboardLayoutList выбирает дескрипторы раскладок клавиатуры, загруженных в настоящее время в системе. Эта функция копирует дескрипторы в буфер, указанный параметром IpBuff. |
||||||
Синтаксис |
int GetKeyboardLayoutList( int nltems, HKL* IpBuff) |
||||||
Параметры |
|||||||
nltems |
int. Максимальное число дескрипторов, которые могут храниться в буфере, указанном параметром IpBuff. |
||||||
IpBuff |
HKL*. Указатель на массив, который принимает дескрипторы раскладок клавиатуры. |
||||||
Возвращаемое значение |
int. Возвращаемое значение — число дескрипторов раскладок, скопированных в буфер; если параметр nltems равен 0, возвращаемое значение — число элементов массива, необходимых для приема всех хранимых в настоящее время дескрипторов раскладок. |
||||||
Включаемый файл |
winuser.h |
||||||
См. также |
GetKeyboardLayoutName, GetKeyboardLayout, LoadKeyboardLayout |
||||||
Пример |
В следующем примере выполняется выборка раскладок клавиатуры и активизация последней раскладки клавиатуры, когда пользователь выбирает пункт меню Test!. |
||||||
См. \local-sources\chap09\09-14.txt |
|||||||
GetKeyboardLayoutName * Windows 98 «• Windows 2000 |
|||||||
Описание |
Функция GetKeyboardLayoutName выбирает имя текущей раскладки клавиатуры вызывающей нити. Для поддержки многоязычных приложений система сопровождает текущую раскладку для каждой нити, а не для системы в целом. |
||||||
Синтаксис |
BOOL GetKeyboardLayoutName( LPTSTR IpszName ) |
||||||
Параметры |
|||||||
IpszName |
LPTSTR. Указатель на буфер, который принимает имя раскладки клавиатуры, включая завершающий нулевой символ. Буфер должен иметь длин} не менее KL_NAMELENGTH символов. |
||||||
Возвращаемое значение |
BOOL. В случае успешного выполнения — TRUE; в ином случае возвращаемое значение — FALSE. |
||||||
Включаемый файл |
winuser.h |
||||||
См. также |
ActivateKeyboardLayout, UnloadKeyboardLayout |
||||||
Пример |
В следующем примере определяется имя активной раскладки клавиатуры приложения и отображается в окне сообщения, когда пользователь выбирает пункт меню Test!. |
||||||
См. \local-sources\cbap09\09-15.txt |
|||||||
GetKeyboardState • Windows 98 • Windows 2000 |
|||||||
Описание |
Функция GetKeyboardState копирует состояние всех 256 виртуальных клавиш в указанный буфер. Эта функция применяется для чтения состояния нескольких клавиш, например комбинаций клавиш Shift+Alt. |
||||||
Синтаксис |
BOOL GetKeyboardState( PBYTE pbKeyState ) |
||||||
Параметры |
|||||||
pbKeyState |
PBYTE. Указатель на 256-байтовый массив, который должен принять данные состояния каждой виртуальной клавиши. В качестве индексов в массиве применяются коды виртуальных клавиш, перечисленные в табл. 9.3. Старший бит байта указанной клавиши будет установлен в 1 , если клавиша нажата, и в 0, если клавиша отпущена. Младший бит устанавливается в 1, если клавиша была нажата нечетное число раз; в ином случае он устанавливается в 0. |
||||||
Возвращаемое значение |
BOOL. В случае успешного выполнения возвращаемое значение — TRUE; в ином случае возвращаемое значение — FALSE. |
||||||
Включаемый файл |
winuser.h |
||||||
См. также |
GetlnputState, SetKeyboardState |
||||||
Соответствующие сообщения |
|||||||
WM_KEYDOWN |
|||||||
Пример |
В следующем примере выполняется выборка состояния клавиатуры, когда пользователь выбирает пункт меню Test!. Проверяется состояние клавиш Shift и Alt для определения того, нажаты ли они. Появляется окно сообщения, которое указывает состояние этих клавиш. |
||||||
См. \local-sources\chap09\09-16. txt |
|||||||
GetKeyboardType • Windows 98 • Windows 2000 |
|||||||
Описание |
Функция GetKeyboardType выбирает информацию о текущей клавиатуре. В зависимости от значения параметра nKeyblnfo, эта функция выбирает либо код типа используемой клавиатуры, либо число функциональных клавиш на клавиатуре. |
||||||
Синтаксис |
int GetKeyboardType( int nKeyblnfo ) |
||||||
Параметры |
|||||||
nKeyblnfo |
int. Тип информации о клавиатуре, которая должна быть выбрана. Этот параметр может иметь одно из значений, перечисленных в табл. 9.8. |
||||||
Таблица 9.8. Значения параметра nKeyblnfo функции GetKeyboardType |
|||||||
Значение |
Описание |
||||||
0 |
Тип клавиатуры |
||||||
1 |
Подтип клавиатуры |
||||||
2 |
Число функциональных клавиш на клавиатуре |
||||||
Возвращаемое значение |
int. Указывает затребованную информацию. В ином случае возвращаемое значение равно 0. Если параметр nKeyblnfo равен 0, возвращаемое значение соответствует описанию, приведенному в табл. 9.9. Если параметр nKeyblnfo равен 1, возвращаемое значение зависит от аппаратных средств. Если параметр nKeyblnfo равен 2, возвращаемое значение представляет собой число функциональных клавиш на клавиатуре. |
||||||
Таблица 9.9. |
Тип клавиатуры GetKeyboardType |
||||||
Значение |
Описание \ |
||||||
1 |
Клавиатура IBM PC/XT или совместимая (83-клавишная). |
||||||
2 |
Клавиатура Olivetti "ICO" (102-клавишная). |
||||||
3 |
Клавиатура IBM PC/AT (84-клавишная) или аналогичная. |
||||||
4 |
Расширенная клавиатура IBM (101- или 102-клавишная). |
||||||
5 |
Клавиатура Nokia 1050 и аналогичная. |
||||||
6 |
Клавиатура Nokia 9140 и аналогичная. |
||||||
7 |
Японская клавиатура. |
||||||
Включаемый файл |
winuser.h |
||||||
Пример |
В следующем примере отображается тип клавиатуры и число функциональных клавиш, когда пользователь выбирает пункт меню Test!. |
||||||
См. \local-soi |
irces \ chap09 \09-17.txt |
||||||
GetKeyNamel |
ext • Windows 98 • Windows 2000 |
||||||
Описание |
Функция GetKeyNameText выбирает строку, содержащую имя клавиши. Эта функция применяется при обработке сообщений WM_KEYDOWN и WM_KEYUP. Параметр IParam передается в функцию GetKeyNameText, и она переносит описание клавиши в строковый буфер, указанный параметром IpBuffer. |
||||||
Синтаксис |
int GetKeyNameText( LONG IParam, LPTSTR IpszBuffer, int cchMaxKey ) |
||||||
Параметры |
|||||||
IParam |
LONG. Второй параметр сообщения клавиатуры (типа WM_KEYDOWN), которое должно быть обработано. Функция интерпретирует параметр IpParam, как показано в табл. 9.10. |
||||||
IpszBuffer |
LPTSTR. Указатель на буфер, который должен принять имя клавиши. |
||||||
cchMaxKey |
int. Максимальная длина имени клавиши в символах, не включая завершающего нулевого символа. |
||||||
Возвращаемое значение |
int. В случае успешного выполнения строка с нулевым символом в конце копируется в буфер, указанный параметром IpszBuffer, и возвращаемое значение представляет собой длину строки в символах типа TCHAR, без учета завершающего нулевого символа. |
||||||
Возвращаемое значение |
int. В случае успешного выполнения строка с нулевым символом в конце копируется в буфер, указанный параметром IpszBuffer, и возвращаемое значение представляет собой длину строки в символах типа TCHAR, без учета завершающего нулевого символа. |
||||||
Таблица 9.10. |
Значения параметра IParam функции GetKeyNameText |
||||||
Биты |
Описание |
||||||
16-23 |
Скэн-код. |
||||||
24 |
Флажок клавиши расширенной клавиатуры. Обозначает некоторые клавиши на расширенной клавиатуре. |
||||||
25 |
Бит "безразличия". Этот бит устанавливается для того, чтобы функция не учитывала различия между левыми и правыми клавишами Ctrl и Shift. |
||||||
Включаемый файл |
\vinuser.h |
||||||
См. также |
GetlnputState |
||||||
Соответствующ |
ие сообщения |
||||||
WM_KEYDOWN, WMJKEYUP |
|||||||
Пример |
В следующем фрагменте программы отображается имя клавиши при ее нажатии. На рис. 9.3 показано, что отображается на экране при нажатии правой клавиши Shift. |
||||||
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.