На этом шаге мы рассмотрим назначение и использование этого компонента.
Компонент находится в списке Dialogs (Диалоговые окна) палитры компонентов, обеспечивает выбор шрифта и его атрибутов (стиля, размера, цвета и т. п.) в диалоговом режиме.
Свойства этого компонента приведены на рисунке 1.
Рис.1. Свойства компонента FontDialog
Среди перечисленных свойств можно отметить следующие:
Таким образом, после выбора нужного шрифта его название попадает в свойство компонента Font.
Пример использования этого компонента демонстрируется на рисунках 2 (форма в режиме дизайна) и 3 (форма в режиме выполнения). Тексты обработчиков кнопок приведены ниже.
Рис.2. Форма в режиме разработки
Тексты обработчиков кнопок:
// Кнопка "Выход" private: System::Void button2_Click(System::Object^ sender, System::EventArgs^ e) { Close(); } // Кнопка "Задание шрифта" private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { if ( fontDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK ) listBox1->Font = fontDialog1->Font; }
Рис.3. Форма в режиме выполнения
Изменим немного наше приложение. Добавим возможность не только выбора шрифта, но и его цвета.
Для этого у компонента FontDialog установим свойство ShowColor в True (рисунок 1). Это позволит в диалоговом окне выбора шрифта отобразить секцию, которая отвечает за выбор цвета. Обработчик кнопки "Задание шрифта" дополним условием, проверяющим установку этого свойства: в случае положительного ответа изменим цвет шрифта у компонента ListBox:
// Кнопка "Задание шрифта" private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) { if ( fontDialog1->ShowDialog() == System::Windows::Forms::DialogResult::OK ) { listBox1->Font = fontDialog1->Font; // Проверка установки свойства ShowColor if (fontDialog1->ShowColor) listBox1->ForeColor = fontDialog1->Color; } }
Результат работы приложения приведен на рисунке 4.
Рис.4. Возможность выбора цвета шрифта
Продолжим эксперименты с этим компонентом. Установив свойство ShowApply в True, отобразим в окне выбора шрифта и его параметров кнопку Применить (рисунок 5), которая позволит установить заданные параметры шрифта без закрытия окна выбора шрифта.
Рис.5. Кнопка "Применить"
Однако чтобы она начала выполнять свои функции, нужно реализовать в программе обработчик события Apply компонента FontDialog. Текст его может быть таким:
// Кнопка "Применить" компонента FontDialog private: System::Void fontDialog1_Apply(System::Object^ sender, System::EventArgs^ e) { listBox1->Font = fontDialog1->Font; // Проверка установки свойства ShowColor if (fontDialog1->ShowColor) listBox1->ForeColor = fontDialog1->Color; }
Результат работы приложения приведен на рисунке 6.
Рис.6. Использование кнопки "Применить"
На следующем шаге мы рассмотрим компонент PrintDialog.