и Rectangle, второй содержит одну команду - Line. Пункт Color главного меню в данном случае является командой и не содержит выпадающего меню. Полагаю, что для демонстрации возможностей этой структуры вполне достаточно. Создать ее вручную - минутное дело. Содержательный пример появится в следующей заключительной главе, а в этой ограничимся демонстрационной версией. Посадим на форму еще один элемент управления - текстовое окно - и свяжем с командами меню обработчики события Click. Для команд Open, Save и Color, имеющих общепринятый смысл, обработчики будут открывать соответствующие этим командам диалоговые окна, позволяющие в диалоге с пользователем открыть файл, сохранить файл и выбрать подходящий цвет. Диалоговые окна - это важный элемент организации интерфейса, который, пользуясь случаем, хочется продемонстрировать. Связывание команды меню с обработчиком события в режиме проектирования выполняется стандартным образом - выделяется соответствующая команда меню, затем в окне Properties щелкается значок молнии и из списка событий выбирается событие Click, после чего открывается заготовка обработчика события, заполняемая нужным кодом. Вот как выглядят обработчики события Click команд Open, Save и Color: private void menuItem4_Click(object sender, System.EventArgs e) { OpenFileDialog openFileDialog1 = new OpenFileDialog(); openFileDialog1.ShowDialog(); //код, показывающий, что делать с открытым файлом textBox1.Text = "Открытие Файла!"; } private void menuItem10_Click(object sender, System.EventArgs e) { SaveFileDialog saveFileDialog1 = new SaveFileDialog(); saveFileDialog1.ShowDialog(); //код, анализирующий результат операции сохранения файла textBox1.Text = "Сохранение Файла!"; } private void menuItem3_Click(object sender, System.EventArgs e) { ColorDialog colorDialog1 = new ColorDialog(); if (colorDialog1.ShowDialog()== DialogResult.OK) this.textBox1.BackColor =colorDialog1.Color; } На рис. 24.10 показано диалоговое окно для выбора цвета, открытое при выборе команды Color. |