ЛР №21. VS. StatusStrip, ToolStrip. Многостраничные и инструментальные панели. Полоса состоянии
Скачать 367.17 Kb.
|
Лабораторная работа. Тема: «Многостраничные и инструментальные панели. Полоса состоянии» StatusStrip Компонент StatusStrip (рис. 1) представляет собой область отображения служебной информации (часто ее называют строкой состояния). Строка вывода служебной информации отображается в нижней части окна программы и обычно разделена на области. В области может отображаться, например, текстовая информация или индикатор процесса (ProgressBar) или командные кнопки. Рис. 1. Компонент StatusStrip Чтобы в строке состояния отображался текст, в нее надо добавить элемент StatusLabel. Для этого нужно сделать щелчок на значке раскрывающегося списка, который отображается в поле компонента StatusStrip, и выбрать StatusLabel (рис. 2). После этого надо выполнить настройку компонента toolStripStatusLabel — задать значения свойств (табл. 1). Рис. 2. Добавление элемента в строку состояния Таблица 1. Свойства объекта StatusLabel
Рис. 3. Форма программы StatusStrip Следующая программа (ее форма приведена на рис. 3, а текст — в листинге 1) демонстрирует использование компонента StatusStrip. В строке состояния отражаются текущая дата и количество символов, которое пользователь ввел в поле редактирования. Значения свойств компонента StatusStrip приведены в табл. 2. Вывод информации о количестве введенных символов выполняет процедура обработки события TextChanged компонента TextBox. Отображение даты обеспечивает конструктор формы. Таблица 2. Значения свойств компонентов toolStripStatusLabel
ToolStrip Компонент ToolStrip (рис. 4) — полоса (панель) инструментов используется для размещения в нем других компонентов. В панель инструментов можно поместить командную кнопку, поле отображения текста, поле редактирования, раскрывающийся список. Свойства компонента ToolStrip приведены в табл. 3. Таблица 3. Свойства компонента ToolStrip
Рис. 4. Компонент ToolStrip Для того чтобы в панель инструментов добавить, например, командную кнопку, надо выбрать компонент ToolStrip, сделать щелчок на значке раскрывающегося списка, который отображается в его поле, и выбрать Button (рис. 5). После этого надо выполнить настройку добавленной кнопки toolStripButton — задать значения свойств (табл. 4). В качестве примера на рис. 6 приведена форма программы MEdit. В панели инструментов находятся четыре кнопки и разделитель (Separator). Значения свойств компонентов, находящихся в панели инструментов, приведены в табл. 5. Следует обратить внимание, фон битовых образов для командных кнопок — пурпурный (magenta). Именно этот цвет указан в качестве значения свойства ImageTransparentColor. После того как панель инструментов будет создана, можно приступить к созданию процедур обработки событий. Рис. 5. Добавление элемента в панель инструментов Таблица 4. Значения свойств компонентов
Рис. 6. Форма программы MEdit NotifyIcon Компонент NotifyIcon (рис. 7) представляет собой "извещающий" значок (notify — извещать, напоминать), который изображает в панели задач программу, работающую в фоновом режиме. Обычно при позиционировании указателя мыши на таком значке появляется подсказка, а в результате щелчка правой кнопкой — контекстное меню, команды которого позволяют получить доступ к программе (открыть окно) или завершить ее работу. Рис. 7. Компонент NotifyIcon Свойства компонента приведены в таблице 5. Таблица 5. Свойства компонента NotifyIcon
Программа "Будильник" (ее окно приведено на рис. 8, а значения свойств компонентов — в табл. 6) демонстрирует использование компонента NotifyIcon. Во время создания формы надо присвоить значение свойству Icon компонента NotifyIcon — выбрать из доступных значков (ico-файлов) подходящий. Рис. 8. Форма программы "Будильник" Таблица 6. Значения свойств компонентов
В окне программы "Будильник" после ее запуска отображается текущее время. После того как пользователь установит время сигнала, задаст текст сообщения и сделает щелчок на кнопке OK, окно программы закроется и в системной области панели задач появится колокольчик — значок, изображающий работающую программу "Будильник". При позиционировании указателя мыши на колокольчике появляется подсказка, в которой отображается время, когда будильник должен подать сигнал и текст напоминания. В контекстном меню программы, которое появляется в результате щелчка правой кнопкой мыши, три команды: Показать, О программе и Завершить (рис. 9). Рис. 9. Значок программы "Будильник" в панели задач: подсказка и контекстное меню Конструктор (он выполняет настройку компонентов) и функции обработки событий приведены в листинге 2. Обратите внимание, в текст программы добавлена ссылка (ее надо поместить после списка используемых пространств имен) на библиотеку winmm.dll, в которой находится функция PlaySound, обеспечивающая воспроизведение звукового сигнала. Звуковой файл должен быть в папке программы (при запуске из среды разработки в режиме отладки — в папке Debug). // Функция PlaySound, обеспечивающая воспроизведение wav-файлов, // командаПоказать private: System::Void toolStripMenuItem1_Click(System::Object^ sender, System::EventArgs^ e) { isSet = false; // остановитьбудильник this->Show(); notifyIcon1->Visible = false; } // командаОпрограмме private: System::Void toolStripMenuItem2_Click(System::Object^ sender, System::EventArgs^ e) { } // командаЗавершить private: System::Void toolStripMenuItem3_Click(System::Object^ sender, System::EventArgs^ e) { } // щелчокназначке private: System::Void notifyIcon1_Click(System::Object^ sender, System::EventArgs^ e) { // если нет контекстного меню, то открыть окно программы можно так: /* isSet = false; this->Show(); notifyIcon1->Visible = false; */ } |