На этом шаге мы рассмотрим компонент TFontComboBox.
Компонент TFontComboBox (рис.1) - специализированный элемент управления для выбора имени шрифта из выпадающего списка, отображающего имена доступных в системе шрифтов на момент выполнения программы. При выборе пользователем шрифта из списка, изменяется свойство FontName и происходит событие OnChange.

Рис.1. Компонент TFontComboBox
Набор шрифтов, отображаемый списком, зависит от значений свойств Device и Options.
Рассмотрим некоторые свойства компонента:
| Свойство | Описание | 
|---|---|
| property FontName: string; | Свойство определяет, какой шрифт отображается в строке редактора компоненты TFontComboBox. Когда пользователь выбирает в выпадающем списке новый шрифт, выбранный шрифт становится значением свойства FontName. Значение свойства Text также изменяется и становится равным имени выбранного шрифта. | 
| property Device: TFontDevice; | Свойство определяет, какие шрифты из доступных в системе на момент выполнения программы будут отображаться в списке выбора компоненты TFontComboBox. 
     Допустимые значения для свойства Device: 
     
  | 
     
 
|  type  TFontDevice = (fdScreen, fdPrinter, fdBoth);  | 
   Тип TFontDevice задает возможные значения свойства Device компоненты TFontComboBox. | 
| property Options: TFontListOptions; |  Возможные значения, которые могут быть вкючены в Options  для TFontComboBox: 
     
  | 
 
|  type  TFontListOption = (foAnsiOnly, foTrueTypeOnly, foFixedPitchOnly, foNoOEMFonts, foOEMFontsOnly, foScalableOnly);  | 
   Тип определяет возможные значения свойства Options компонента TFontComboBox. | 
Например, если сначала свойству Option foNoSymbolFonts сначала придать значение False, а потом True, то из списка исчезнет, например, шрифт Symbol (рис.2а-б).

Рис.2а. Свойство foNoSymbolFonts=False 

Рис.2б. Свойство foNoSymbolFonts=True
Приведем пример: создадим приложение, которое будет отображать смену шрифтов.
Поместим на форму компоненты FontComboBox1 , RxLable1 (рис.3).

Рис.3. Форма с размещенными на ней компонентами FontComboBox1, RxLable1
Для компонента FontComboBox1 напишем обработчик события OnChange:
procedure TForm1.FontComboBox1Change(Sender: TObject); begin RxLabel1.Font.Name:=FontComboBox1.Text; end;
Работа программы показана на рис.4(а-в).

Рис.4а. Шрифт не выбран 

Рис.4б. Выбран шрифт OCR-B 10 BT 

Рис.4в. Выбран шрифт Monotype Corsiva 
Текст этого примера можно взять здесь.
На следующем шаге мы рассмотрим компонент TColorComboBox.