top of page

Тема 5.6 Меню

Методика создания меню формы

Создадим Windows Application решение, как показано в параграфе "Простейшие Windows Application решения", и поместим на форму контрол MenuStrip. Он разместится внизу окна редактора формы.

В функции InitialiseComponent() файла Form1.Designer.cs, как и при добавлении других контролов, появятся строки определения меню и задания его свойств:

this.menuStrip1 = new System.Windows.Forms.MenuStrip();

this.SuspendLayout();

// menuStrip1

//

this.menuStrip1.Location = new System.Drawing.Point(0, 0);

this.menuStrip1.Name = "menuStrip1";

this.menuStrip1.Size = new System.Drawing.Size(548, 24);

this.menuStrip1.TabIndex = 0;

this.menuStrip1.Text = "menuStrip1";

Заметим, что также, как и для кнопок, этот код показывает как динамически создать меню, а коды, которые будут приведены ниже - как добавлять к меню пункты и обработчики.

Вызовем контекстное меню контрола и выберем пункт Properties. Ознакомимся с некоторыми свойствами. Прежде всего нас интересуют:

·         LayoutStyle - расположение пунктов меню на форме, выберем HorisontalStackWithOverflow (по умолчанию);

·         MaximumSize и MiniumSize, Size - иногда бывает целесообразно выбрать размер по Y, такой, чтобы можно было разместить рисунки на панели меню без их искажения (зависит от конкретной ситуации).

·         BackColor - по своему усмотрению или можно выбрать значение Control (цвет, в данном случае, формы).

·         AutoSize - True.

Остальные параметры оставим без изменения.

Далее, будем добавлять пункты меню. Прежде всего можно добавить стандартный набор пунктов меню, если кликнуть мышкой на маленькой стрелочке в правом верхнем углу панели меню и выбрать ссылку Insert Standart Items (Рис.1.).

Окно MenuStript Tasks дает еще несколько возможностей по конструированию меню, в том числе задать расположение меню, включить пункты меню в контейнер, быстро перейти к редактированию пунктов меню. Однако, далее мы создадим несколько пунктов меню, обычным образом. Для этого, кликнем мышкой на панели меню в дизайнере формы. На образце формы появилась полоска с окошечком "Type Here". Введем традиционый для всех меню пункт &File - окно "Type Here" размножилось, показывая направления дальнейшего ввода (Рис.2.), а в окне редактора кода в определениях и функции InitializeComponent() добавился код:

this.menuStrip1 = new System.Windows.Forms.MenuStrip();

//Создание и размещение пункта меню

this.fileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();

this.menuStrip1.SuspendLayout();

this.SuspendLayout();

// fileToolStripMenuItem

//Его свойства

this.fileToolStripMenuItem.Name = "fileToolStripMenuItem";

this.fileToolStripMenuItem.Size = new System.Drawing.Size(35, 20);

this.fileToolStripMenuItem.Text = "&File";

bottom of page