_WinAPI_CreateFontIndirect
Создаёт логический шрифт с указанными характеристиками
#include <WinAPI.au3>
_WinAPI_CreateFontIndirect($tLogFont)
Параметры
$tLogFont | Структура $tagLOGFONT, определяющая характеристики логического шрифта |
Возвращаемое значение
Успех: | Возвращает дескриптор логического шрифта |
Ошибка: | Возвращает 0 |
Примечания
Эта функция создает логический шрифт с характеристиками, указанными в структуре $tagLOGFONT. Когда этот шрифт выбран с помощью функции SelectObject, GDI-font-mapper пытается сопоставить логический шрифт с существующим физическим шрифтом. Если не удается найти точное соответствие, то предоставляется альтернативный шрифт, чьи характеристики в наибольшей степени совпадают с запрошенными характеристиками, на сколько это возможно.См. также
_WinAPI_SetFont, $tagLOGFONT, _WinAPI_CreateFontСм. также
Искать CreateFontIndirect в библиотеке MSDNПример
#include <GuiListBox.au3>
#include <GuiButton.au3>
Example()
Func Example()
Local $hGUI, $hFont, $hBtn, $hListBox, $tLogFont
$hGUI = GUICreate(StringTrimRight(@ScriptName, 4), 350, 200)
$hBtn = _GUICtrlButton_Create($hGUI, "Кнопка со шрифтом", 10, 10, 270, 34)
$hListBox = _GUICtrlListBox_Create($hGUI, "Жирный шрифт", 10, 50, 270, 150)
; Заполняет ListBox пунктами
_GUICtrlListBox_BeginUpdate($hListBox)
_GUICtrlListBox_Dir($hListBox, "", $DDL_DRIVES, False)
_GUICtrlListBox_EndUpdate($hListBox)
; Характеристики шрифта на основе структуры
$tLogFont = DllStructCreate($tagLOGFONT)
DllStructSetData($tLogFont, "Height", 22)
DllStructSetData($tLogFont, "Weight", 700)
DllStructSetData($tLogFont, "Italic", True)
DllStructSetData($tLogFont, "FaceName", 'Courier new')
$hFont = _WinAPI_CreateFontIndirect($tLogFont)
; Назначает шрифт элементам управления
_WinAPI_SetFont($hBtn, $hFont)
_WinAPI_SetFont($hListBox, $hFont)
GUISetState()
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
_WinAPI_DeleteObject($hFont)
EndFunc ;==>Example