Русский справочник по Win32 API
Шрифт:
Возвращаемые значения
Возвращается предыдущий режим заполнения многоугольников.
В случае ошибки возвращается нуль.
Комментарии
Вообще, режимы отличаются только в случаях, где должен быть заполнен сложный перекрывающийся многоугольник (например, пятисторонний многоугольник, который образует пяти-лучевую звезду с пятиугольником в центре). В таких случаях, режим ALTERNATE заполняет каждую закрытую область внутри прямоугольника (то есть, лучи звезды), а режим WINDING заполняет все области (то есть, лучи звезды и прямоугольник).
См. также
GetPolyFillMode .
Црифт
CreateFontIndirect
Функция CreateFontIndirect создает логический шрифт, характеристики которого определены в указанной структуре. Впоследствии шрифт может быть выбран в качестве текущего шрифта для любого контекста устройства.
HFONT CreateFontIndirect (
CONST LOGFONT * lplf // указатель на структуру логического шрифта
);
Параметры
lplf– указывает на структуру типа LOGFONT , которая определяет характеристики логического шрифта.
Возвращаемые значения
В случае успеха возвращается дескриптор логического шрифта.
В случае неудачи возвращается нуль.
Комментарии
Функция CreateFontIndirect создает логический шрифт с характеристиками, указанными в структуре типа LOGFONT . Когда шрифт выбирают функцией SelectObject , механизм отображения шрифтов GDI пытается подобрать логическому шрифту существующий физический шрифт. Если попытка подобрать точное соответствие закончилась неудачей, то предоставляется альтернативный шрифт, чьи характеристики удовлетворяют наибольшему числу запрашиваемых характеристик.
Когда логический шрифт вам больше не нужен, вызовите для его удаления функцию DeleteObject .
См. также
DeleteObject, LOGFONT, SelectObject .
Сообщения и очереди сообщений
GetQueueStatus
Функция GetQueueStatus возвращает флаги, которые показывают тип сообщений, обнаруженных в очереди сообщений вызывающего потока.
DWORD GetQueueStatus (
UINT flags // флаги состояния очереди
);
Параметры
flags– определяет флаги состояния очереди, указывая типы сообщений для проверки. Может быть комбинацией следующих значений:
Значение | Пояснение |
QS_ALLEVENTS | Сообщение ввода, WM_TIMER, WM_PAINT, WM_HOTKEY или помещенное в очередь сообщение. |
QS_ALLINPUT | Любое сообщение ввода. |
QS_HOTKEY | Сообщение WM_HOTKEY . |
QS_INPUT | Сообщение ввода. |
QS_KEY | Сообщение WM_KEYUP, WM_KEYDOWN, WM_SYSKEYUP или WM_SYSKEYDOWN в очереди. |
QS_MOUSE | Сообщение WM_MOUSEMOVE или сообщение клавиши мыши ( WM_LBUTTONUP, WM_RBUTTONDOWN и т. п.). |
QS_MOUSEBUTTON | Сообщение клавиши мыши ( WM_LBUTTONUP, WM_RBUTTONDOWN и т. п.). |
QS_MOUSEMOVE | Сообщение WM_MOUSEMOVE. |
QS_PAINT | Сообщение WM_PAINT . |
QS_OSTMESSAGE | Помещенное сообщение, отличное от перечисленных выше, находится в очереди. |
QS_ENDMESSAGE | Сообщение, отправленное другим потоком или приложением, находится в очереди. |
QS_TIMER | Сообщение WM_TIMER . |
Возвращаемые значения
Старшее слово показывает типы сообщений, находящихся в очереди. Младшее слово показывает типы сообщений, которые были добавлены в очередь и все еще там находятся с момента последнего вызова функции GetQueueStatus : GetMessage или PeekMessage .
Комментарии
Присутствие флага QS_ в возвращаемом значении не гарантирует, что последующий вызов функции PeekMessage или GetMessage вернет сообщение. PeekMessage или GetMessage выполняют определенную внутреннюю фильтрацию, которая может привести ко внутренней обработке сообщения. По этой причине, возвращаемое функцией GetQueueStatus значение должно быть рассматриваемо только как намек на то, должна ли быть вызвана функция GetMessage или PeekMessage .
См. также
GetInputState, GetMessage, PeekMessage .
Кисти
CreatePatternBrush
Функция CreatePatternBrush создает логическую кисть с указанным шаблоном в виде битового изображения. Битовое изображение не может быть независимым от оборудования битовым изображением ( DIB ), которое создано функцией CreateDIBSection .
HBRUSH CreatePatternBrush (
HBITMAP hbmp // дескриптор битового изображения
);
Параметры
hbmp– идентифицирует битовый образ, используемый для создания логической кисти.
Windows 95: Создание кистей из битовых образов размером более 8 x 8 пикселей не поддерживается. Если указан битовый образ большего размера, используется его часть.
Возвращаемые значения
В случае успеха возвращается дескриптор логической кисти.
В случае неудачи возвращается NULL .
Комментарии
Шаблонная кисть - это битовый образ, который Windows использует для рисования внутренних частей закрашенных фигур.
После того, как приложение создало кисть, вызвав функцию CreatePatternBrush , оно может выбрать эту кисть в любой контекст устройства при помощи функции SelectObject .
Вы можете удалить шаблонную кисть без воздействия на связанный битовый образ, используя функцию DeleteObject . Таким образом, вы можете использовать этот битовый образ для создания какого угодно числа шаблонных кистей.
Кисть, созданная с использованием монохромного битового образа, имеет цвета текста и фона того контекста устройства, в котором происходит рисование. Пиксели, представляемые нулевым битом, отрисовываются текущим цветом текста; пиксели, представляемые единичным битом, отрисовываются текущим цветом фона.