Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Using System.Windows.Forms;




class MenuForm: Form

{

MainMenu MyMenu;

Public MenuForm()

{

Text = "Добавление меню";

// Создаем объект основного меню.

MyMenu = new MainMenu();

// Добавляем в это меню элемент верхнего уровня.

MenuItem m1 = new MenuItem("Файл");

MyMenu.MenuItems.Add(m1);

MenuItem m2 = new MenuItem("Сервис");

MyMenu.MenuItems.Add(m2);

// Создание подменю "Файл".

MenuItem subm1 = new MenuItem("Открыть");

M1.MenuItems.Add(subm1);

MenuItem subm2 = new MenuItem("Закрыть");

M1.MenuItems.Add(subm2);

MenuItem subm3 = new MenuItem("Выйти");

M1.MenuItems.Add(subm3);

// Создаем подменю "Сервис".

MenuItem subm4 = new MenuItem("Координаты");

M2.MenuItems.Add(subm4);

MenuItem subm5 = new MenuItem("Изменить размер");

M2.MenuItems.Add(subm5);

MenuItem subm6 = new MenuItem("Восстановить");

M2.MenuItems.Add(subm6);

// Добавляем обработчики событий для элементов меню.

subm1.Click += new EventHandler(MMOpenClick);

subm2.Click += new EventHandler(MMCloseClick);

subm3.Click += new EventHandler(MMExitClick);

subm4.Click += new EventHandler(MMCoordClick);

subm5.Click += new EventHandler(MMChangeClick);

subm6.Click += new EventHandler(MMRestoreClick);

// Назначаем меню форме.

Menu = MyMenu;

}

[STAThread]

Public static void Main()

{

MenuForm skel = new MenuForm();

Application.Run(skel);

}

// Обработчик для команды меню "Координаты".

Protected void MMCoordClick(object who, EventArgs e)

{

// Создаем строку, которая содержит три координаты.

string size =

String.Format("{0}: {1}, {2}\n{3}: {4}, {5} ",

"Вверху, Слева", Top, Left,

"Внизу, Справа", Bottom, Right);

// Отображаем окно сообщений.

MessageBox.Show(size, "Координаты окна",

MessageBoxButtons.OK);

}

// Обработчик для команды меню "Изменить размер".

Protected void MMChangeClick(object who, EventArgs e)

{

Width = Height = 200;

}

// Обработчик для команды меню "Восстановить".

Protected void MMRestoreClick(object who, EventArgs e)

{

Width = Height = 300;

}

// Обработчик для команды меню "Открыть".

Protected void MMOpenClick(object who, EventArgs e)

{

MessageBox.Show("Неактивная команда", "Заглушка",

MessageBoxButtons.OK);

}

// Другой вариант. Обработчик для команды меню "Открыть".

// using System.Diagnostics; - необходимо подключить в начале модуля

Protected void MMOpenClick(object who, EventArgs e)

{

Process newProc = Process.Start("poster.jpg"); //==

newProc.WaitForExit(); //==

newProc.Close(); //==

}

// Обработчик для команды меню "Закрыть".

Protected void MMCloseClick(object who, EventArgs e)

{

MessageBox.Show("Неактивная командв", "Заглушка",

MessageBoxButtons.OK);

}

// Обработчик для команды меню "Выйти".

Protected void MMExitClick(object who, EventArgs e)

{

DialogResult result = MessageBox.Show("Остановить программу?",

"Завершение",

MessageBoxButtons.YesNo);

if(result == DialogResult.Yes) Application.Exit();

}

}

 

В этой программе определяется два раскрывающихся меню. Доступ к первому (оно содержит команды Открыть, Закрыть и Выйти) обеспечивается через меню Файл.

Обработчики событий для элементов Открыть и Закрыть представляют собой заглушки, которые не выполняют никаких действий, кроме отображения окна сообщения.

Обработчик элемента Выйти в собственном окне сообщения предлагает пользователю подтвердить его желание завершить программу. Если пользователь ответит щелчком на кнопке Да, программа будет завершена.

Меню Сервис также содержит три элемента: Координаты, Изменить размер и Восстановить.

При выборе команды Координаты в окне сообщения отображаются координаты верхнего левого и нижнего правого углов окна.

Попробуйте переместить окно, а затем с помощью этой команды отобразите его координаты. При каждом перемещении окна в новую позицию его координаты будут изменяться соответствующим образом.

При выборе команды Изменить размер окно программы уменьшается в размере так, чтобы его ширина и высота составляли 200 пикселей. Это реализуется с помощью свойств Width и Height:

public int Width { get; set; }

public int Height { get; set; }

По умолчанию окно имеет размеры 300x300.

При выборе команды Restore окно

возвращается к своему исходному размеру.





Поделиться с друзьями:


Дата добавления: 2016-10-22; Мы поможем в написании ваших работ!; просмотров: 494 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Студент может не знать в двух случаях: не знал, или забыл. © Неизвестно
==> читать все изречения...

2754 - | 2314 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.