Компоненты Windows Forms. Компонент ColorDialog

   
На этом шаге мы рассмотрим назначение и использование этого компонента.

   
Компонент находится в списке All Windows Forms (Все формы Windows Forms) палитры компонентов.
Он делает возможным выбор цвета в диалоговом окне, работает точно так же, как и остальные диалоговые компоненты: выполняется метод ShowDialog(), открывается палитра цветов, из
которой нужно выбрать необходимый цвет. Значение цвета помещается в свойство Color компонента, после чего цвет может использоваться в дальнейшем.

   
Перечень свойств ColorDialog приведен на рисунке 1.


Рис.1. Свойства компонента ColorDialog

   
Среди свойств ColorDialog следует отметить следующие:

  • AnyColor - при значении True, в диалоговом окне отображаются все доступные цвета в наборе основных цветов;
  • FullOpen - при значении True отображается диалоговое окно с расширенными настройками для выбора цвета.
    В этом случае пользователь может задавать собственные цвета. Если для свойства задано значение False, кнопка "Определить цвет" недоступна и пользователь может работать только со стандартными цветами палитры;
  • SolidColorOnly - при значении True, пользователь не может выбирать полутона, для выбора доступны только чистые цвета;
  • Color - выбранный в диалоговом окне цвет.

   
Пример работы компонента показан на рисунках 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 ( colorDialog1->ShowDialog() == 
		 System::Windows::Forms::DialogResult::OK )
		 this->BackColor = colorDialog1->Color;
 }

Архив проекта можно взять здесь.


Рис.3. Результат работы приложения

   
На следующем шаге мы рассмотрим компонент FontDialog.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий