Рейтинговые книги
Читем онлайн Русский справочник по Win32 API - Тарас Сорока

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 23 24 25 26 27 28 29 30 31 ... 34

Когда логический шрифт вам больше не нужен, вызовите для его удаления функцию 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 . Таким образом, вы можете использовать этот битовый образ для создания какого угодно числа шаблонных кистей.

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

Битовое изображение, идентифицируемое значением параметра hbmp , не может быть независимым от оборудования битовым изображением ( DIB ), которое создано функцией CreateDIBSection . Если оно является независимым от оборудования битовым изображением, то вызов CreatePatternBrush завершается неудачей.

См. также

CreateBitmap, CreateBitmapIndirect, CreateCompatibleBitmap, CreateDIBPatternBrush, CreateDIBPatternBrushPt, CreateDIBSection, CreateHatchBrush, DeleteObject, GetBrushOrgEx, LoadBitmap, SelectObject, SetBrushOrgEx .

Библиотека оболочки

DragAcceptFiles

Функция DragAcceptFiles регистрирует окно, если оно принимает перетаскиваемые на него файлы.

VOID DragAcceptFiles (

HWND hWnd , // дескриптор окна

BOOL fAccept // опция разрешения принятия файлов

);

Параметры

hWnd - идентифицирует окно, регистрируемое, если оно принимает перетаскиваемые на него файлы.

fAccept - определяет, принимает ли окно, определенное параметром hWnd , перетаскиваемые на него файлы. Значение TRUE разрешает принятие файлов, значение FALSE его запрещает.

Возвращаемые значения

Функция не возвращает значения.

Комментарии

Приложение, вызывающее DragAcceptFiles со значением TRUE параметра fAccept идентифицирует себя как способное обрабатывать сообщение WM_DROPFILES от диспетчера файлов.

См . также

WM_DROPFILES.

DragFinish

Функция DragFinish освобождает память, которую Windows выделила для использования в процессе передачи имен файлов в приложение.

VOID DragFinish (

HDROP hDrop // дескриптор освобождаемой памяти

);

Параметры

hDrop - идентифицирует структуру, описывающую перемещенные мышью файлы. Этот дескриптор извлекается из параметра wParam сообщения WM_DROPFILES.

Возвращаемые значения

Функция не возвращает значения.

См . также

WM_DROPFILES.

DragQueryFile

Функция DragQueryFile извлекает имена перемещенных мышью файлов.

UINT DragQueryFile (

HDROP hDrop , // дескриптор структуры для перемещенных файлов

UINT iFile , // индекс запрошенного файла

LPTSTR lpszFile , // буфер для имени файла

UINT cch // размер буфера для имени файла

);

Параметры

hDrop - идентифицирует структуру, содержащую имена файлов.

iFile - определяет индекс запрашиваемого файла. Если значение параметра iFile равно 0 xFFFFFFFF, DragQueryFile возвращает число перемещенных файлов. Если значение параметра iFile лежит между нулем и количеством перемещенных файлов, DragQueryFile копирует соответствующее значению им файла в буфер, указанный параметром lpszFile .

lpszFile - указывает на буфер для имени перемещенного файла. Им файла представляет собой завершающуюся нулем строку. Если значение lpszFile равно NULL, DragQueryFile возвращает необходимый размер буфера в символах.

cch - определяет размер буфера в символах.

Возвращаемые значения

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

Если значение параметра iFile равно 0 xFFFFFFFF, то возвращается число перемещенных мышью файлов.

Если значение параметра iFile лежит между нулем и количеством перемещенных файлов, и значение параметра lpszFile равно NULL, возвращается требуемый размер буфера, в символах, без учета завершающего нулевого символа.

См . также

DragQueryPoint .

DragQueryPoint

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

BOOL DragQueryPoint (

HDROP hDrop , // дескриптор структуры для перемещенных файлов

LPPOINT lppt // указатель на структуру для координат мыши

1 ... 23 24 25 26 27 28 29 30 31 ... 34
На этой странице вы можете бесплатно читать книгу Русский справочник по Win32 API - Тарас Сорока бесплатно.
Похожие на Русский справочник по Win32 API - Тарас Сорока книги

Оставить комментарий