Здравствуйте, уважаемые подписчики. Перед вами очередной выпуск рассылки "WinAPI
на русском".
Сайт рассылки: http://www.bcbdev.ru. Материалы по Win32 API, C++Builder.
Раздел "WinAPI": http://www.bcbdev.ru/winapi.htm
Раздел "C++Builder": http://www.bcbdev.ru/cbuilder.htm
Раздел "Примеры кода": http://www.bcbdev.ru/codesamples.htm
Раздел "MSDN по-русски": http://www.bcbdev.ru/msdn/index.php
Обновления на сайте
В раздел Примеры кода добавился пример "Проверка буфера обмена на наличие в нем
текста", ответ на вопрос "Как получить аргументы командной строки для приложения?".
Перевод
Сегодня вашему вниманию представлен перевод сообщения WM_SETFONT.
WM_SETFONT
Приложение отправляет сообщение WM_SETFONT для указания шрифта, который будет
использовать элемент управления при выводе текста.
WM_SETFONT
wParam = (WPARAM) hfont; // дескриптор шрифта
lParam = MAKELPARAM(fRedraw, 0); // флаг перерисовывания
Параметры
hfont – значение wParam. Идентифицирует шрифт. Если значение этого параметра
равно NULL, элемент управления использует для вывода текста шрифт системы по
умолчанию.
fRedraw – значение lParam. Определяет, будет ли элемент управления перерисован
немедленно после установки шрифта. Установка значения параметра fRedraw в TRUE
вызовет перерисовывание элемента управления.
Возвращаемые значения
Сообщение не возвращает значения.
Комментарии
Сообщение WM_SETFONT применяется ко всем элементам управления, а не только к
находящимся в диалоговых окнах.
Лучшее время для владельца элемента управления диалогового окна для установки
шрифта – в момент получения сообщения WM_INITDIALOG. Приложение должно вызывать
функцию DeleteObject для удаления шрифта после того, когда необходимость в нем
отпала; например, после разрушения элемента управления.
Размер элемента управления не изменяется в результате получения этого сообщения.
Чтобы избежать обрезки текста, который не помещается внутри границ элемента управления,
приложение должно скорректировать размеры элемента управления перед установкой
нового шрифта.
Когда диалоговое окно использует стиль DS_SETFONT для установки текста в элементах
управления, Windows отправляет оконной процедуре диалогового окна сообщение WM_SETFONT
перед созданием элемента управления. Приложение может создать диалоговое окно,
которое содержит стиль DS_SETFONT, используя одну из следующих функций:
CreateDialogIndirect
CreateDialogIndirectParam
DialogBoxIndirect
DialogBoxIndirectParam
См. также
CreateDialogIndirect, CreateDialogIndirectParam, DeleteObject, DialogBoxIndirect,
DialogBoxIndirectParam, WM_INITDIALOG, DLGTEMPLATE.
Справочник по WinAPI: http://www.bcbdev.ru/winapi/win32api.exe
Справочник по WinAPI (zip-версия): http://www.bcbdev.ru/winapi/win32api.zip
Дружественная рассылка "Программирование на WinAPI": http://subscribe.ru/catalog/comp.soft.prog.russianmsdn
С уважением,
ведущий рассылки
Тарас Сорока.
mailto:stathome@rol.ru