Класс FontDialog

Класс FontDialog

Как вы можете догадываться, существует и класс диалогового окна для настройки шрифтов (FontDialog). Вид этого окна показан на рис. 20.11.

Рис. 20.11. Диалоговое окно Шрифт Windows Forms

Подобно типу ColorDialog, рассмотренному в этой главе выше, для работы с FontDialog нужно просто вызвать метод ShowDialog(). Используя свойства Font, можно извлечь текущие характеристики шрифта для использования в приложении. Для примера рассмотрите следующую форму, имитирующую логику предыдущего проекта ColorDlg. При щелчке пользователя в любом месте окна формы отображается диалоговое окно Шрифт и выводится информация о текущем выборе.

public partial class MainForm: Form {

 private FontDialog fontDlg = new FontDialog();

 private Font currFont = new Font("Times New Roman", 12);

 public MainForm() {

  InitializeComponent(); CenterToScreen();

 }

 private void MainForm_MouseDown(object sender, MouseEventArgs e) {

  if (fontDlg.ShowDialog() != DialogResult.Cancel) {

   currFont = fontDlg.Font;

   this.Text = string.Format("Selected Font: {0}", currFont); Invalidate();

  }

 }

 private void MainForm_Paint(object sender, PaintEventArgs e) {

  Graphics g = e.Graphics;

  g.DrawString("Проверка…", currFont, Brushes.Black, 0, 0);

 }

}

Исходный код. Проект FontDlgForm размещен в подкаталоге, соответствующем главе 20.