Русский справочник по Win32 API
Шрифт:
Функция SetClassWord замещает 16-битное ( word ) значение в указанном смещении в дополнительной памяти класса для класса окна, которому принадлежит указанное окно.
WORD SetClassWord (
HWND hWnd , // дескриптор окна
int nIndex , // индекс заменяемого значения
WORD wNewWord // новое значение
);
Параметры
hWnd–
nIndex– определяет отсчитываемое от нуля смещение замещаемого значения в байтах. Верные значения находятся в диапазоне от нуля до числа байт в памяти класса минус два. Например, если вы задали десять или более байт дополнительной памяти класса, восемь будет индексом пятого 16-битного значения.
wNewWord– определяет новое значение.
Возвращаемые значения
В случае успеха возвращается предыдущее значение 16-битного целого.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
Комментарии
Зарезервируйте дополнительную память класса указанием ненулевого значения члена cbClsExtra структуры типа WNDCLASS , используемой с функцией RegisterClass .
Значения GCW _ в Win 32 API устарели. Вы должны использовать функцию SetClassLong для устновки значений класса, ранее устанавливаемых с использованием значений GCW _ функцией SetClassWord .
См. также
GetClassLong, GetClassWord, RegisterClass, SetClassLong, WNDCLASS .
UnregisterClass
Функция UnregisterClass удаляет класс окна, освобождая память, требуемую классу.
BOOL UnregisterClass (
LPCTSTR lpClassName , // адрес строки с именем класса
HINSTANCE hInstance // дескриптор экземпляра приложения
);
Параметры
lpClassName– указывает на завершающуюся нулем строку или целый атом. Если значение этого параметра является целым атомом, он должен быть глобальным атомом, созданным предыдущим вызовом функции GlobalAddAtom . Атом, 16-битное значение, меньшее 0 xC 000, должен находиться в младшем слове lpClassName ; старшее слово должно быть равно нулю.
Если значение lpClassName является строкой, она определяет имя класса окна. Это имя класса должно быть зарегистрировано предыдущим вызовом функции RegisterClass . Регистрация системных глобальных классов, таких, как классы элементов управления, не может быть отменена.
hInstance– определяет экземпляр модуля, создавшего класс.
Возвращаемые значения
В случае успеха возвращается ненулевое значение.
В случае если класс не может быть найден или окно, созданное с этим классом, все еще существует, возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError .
Комментарии
Перед вызовом этой функции приложение должно разрушить все окна, созданные с указанным классом.
Регистрация всех классов окон, которые зарегистрировало приложение, должна быть отменена при его завершении.
См. также
GlobalAddAtom, RegisterClass .
Ввод мышью
GetDoubleClickTime
Функция GetDoubleClickTime извлекает текущее время двойного щелчка мыши. Двойной щелчок - это серия двух щелчков клавиши мыши; второй щелчок происходит в течение заданного времени после первого. Время двойного щелчка - это максимальное число миллисекунд, которые могут пройти между первым и вторым щелчками в двойном щелчке.
UINT GetDoubleClickTime ( VOID )
Параметры
Функция не имеет параметров.
Возвращаемые значения
В случае успеха возвращается время двойного щелчка в миллисекундах.
См. также
SetDoubleClickTime .
Прямые и кривые
GetArcDirection
Функция GetArcDirection возвращает текущее направление рисования дуг для указанного контекста устройства. Функции рисования дуг и прямоугольников используют эту функцию.
int GetArcDirection (
HDC hdc // дескриптор контекста устройства
);
Параметры
hdc– идентифицирует контекст устройства.
Возвращаемые значения
В случае успеха возвращается текущее направление рисования. Может принимать одно из следующих значений:
Значение | Пояснение |
AD_COUNTERCLOCKWISE | Дуги и прямоугольники рисуются против часовой стрелки. |
AD_CLOCKWISE | Дуги и прямоугольники рисуются по часовой стрелке. |