Компонент Delphi FontDialog выводит на экран стандартное диалоговое окно выбора шрифта (Рисунок 1). Диалог позволяет выбирать один из установленных в операционной системе шрифтов и настроить его ключевые параметры.
Рис.1
Внешний вид и возможности окна выбора шрифта в первую очередь зависят от выбранных программистов опций.
Опции FontDialog
Значение | Описание |
fdAnsiOnly | Отображать только шрифты в кодировке ANSI |
fdApplyButton | Выводить в окно диалога кнопку «Пременить». Наличие этой кнопки предоставит возможность событием диалога onApply |
fdEffects | Выводить в окно диалога флажки зачеркнутый и Подчеркнутый и список выбора цвета шрифта |
fdFixedPitchOnly | Включать в набор шрифтов только шрифты, у которых ширина всех символов одинакова |
fdForceFontExist | Допускает ввод имени гарнитуры шрифта в строке ввода. Если пользователь наберет имя, отсутствующее в списке, будет выведено сообщение об ошибке |
fdLimitSize | Работает совместно со свойствами диалога MaxFontSize и MinFontSize, накладывает ограничение на диапазон размеров шрифтов |
fdNoFaceSel | При вызове диалога в списке выбора не задается шрифт по умолчанию |
fdNoOEMFonts | Из списка отображаемых шрифтов исключается шрифты с набором символов OEM |
fdNoSimulations | Показывает только шрифты и начертания шрифта, которые непосредственно обеспечиваются файлом формирования рисунка шрифта. В список доступных шрифтов не вклбчаются стили, синтезированные GDI Windows |
fdNoSizeSel | При выборе диалога не задается размер шрифта по умолчанию |
fdNoStyleSel | При вызове диалога не задается стиль начертания шрифта |
fdNoVectorFonts | Изымает из списка выбора все векторные шрифты |
fdScalableOnly | Показывает только масштабируемые шрифты, растровые шрифты удаляются из списка |
fdShowHelp | Выводит кнопку помощи |
fdTrueTypeOnly | Выводит только TrueType-шрифты |
fdWysiwyg | Выводит только шрифты, доступные принтеру и экрану |
Пример использования компонента. На форму расположим компонент FontDialog, кнопку Button и компонент Label для демонстрации выбора шрифта
1 2 3 4 5 6 | procedure TForm1.Button1Click(Sender: TObject); begin if FontDialog1.Execute then Label1.Font:=FontDialog1.Font; end; end. |