Китай |
Разработка комбинированного компонента
Добавление объектов всплывающей подсказки
Для пущей красоты (и для знакомства) добавим к LinkLabelвсплывающие подсказки (оперативные справки) - объекты класса ToolTip, генерирующие окно сообщений при наведении курсора на прикрепленный объект. К сожалению, компонент LinkLabel не имеет встроенного свойства ToolTip, которое бы прикрепляло саму справку к компоненту. Поэтому мы вначале создадим саму подсказку - объект типа ToolTip, а затем уже прикрепим объект LinkLabel к этой подсказке. В коде стартовой формы нашей лабораторной работы имеются 3 объекта LinkLabel, поэтому создадим 3 объекта всплывающей подсказки ToolTip.
- В начале класса Start (удобнее перед конструктором класса) создайте и инициализируйте два одномерных массива
public partial class Start : Form { // Массив сообщений всплывающих подсказок для LinkLabel String[] strTips = { "Тест для компонента кнопки,\n" + "генерирующей щелчки мыши", "Тест для компонента скроллирующей кнопки \n" + "со стрелками, генерирующей щелчки мыши", "Тест для компонента текстового \n" + "поля со счетчиком" }; // Массив ссылок для объектов всплывающих подсказок ToolTip[] tips = { new ToolTip(), new ToolTip(), new ToolTip() }; public Start() { InitializeComponent(); } Form frm; ....................................................... }Листинг 19.3. Создание двух массивов для всплывающих подсказок ToolTip
- В конструкторе класса Start после вызова функции инициализации компонентов формы вставьте код, связывающий объекты подсказок с кнопками-ссылками и настраивающий эти подсказки
public Start() { InitializeComponent(); // Привязка всплывающих подсказок к запускающим кнопкам tips[0].SetToolTip(linkLabel1, strTips[0]); tips[1].SetToolTip(linkLabel2, strTips[1]); tips[2].SetToolTip(linkLabel3, strTips[2]); // Настройка ToolTip for (int i = 0; i < tips.Length; i++) { tips[i].IsBalloon = true;// Использовать окно подсказки tips[i].ToolTipIcon = ToolTipIcon.Info;// Иконки tips[i].ToolTipTitle = "Упражнение " + (i + 1); // Заголовок tips[i].ForeColor = Color.Magenta; // Цвет текста tips[i].BackColor = Color.LightGoldenrodYellow; // Цвет фона } }Листинг 19.4. Код прикрепления объектов-подсказок и их настройка
Таблица цветов структуры Color
Цвета для объектов подсказки выберите из приведенной таблицы по своему вкусу.
- Запустите тестовую форму и проверьте механизм работы всплывающих подсказок
Теперь для запуска тестов нескольких упражнений мы подготовились и можно приступать к разработке пользовательских компонентов.