Исходный текст программы
Классы и свойства:
public class MenuStrip : ToolStrip
public virtual ToolStripItemCollection Items { get; }
public class ToolStripMenuItem : ToolStripDropDownItem
public abstract class ToolStripDropDownItem : ToolStripItem
public ToolStripItemCollection DropDownItems { get; }
public class ToolStripItemCollection : ArrangedElementCollection, IList, ICollection, IEnumerable
На рис.9 показана связь объектов главного меню.
рис.9
Рассмотрим подробнее, как программируется меню на уровне исходного текста программы.
1.
Сначала создается контейнер MenuStrip и все объекты-пункты меню.
// создаем контейнер MenuStrip и пункты ToolStripMenuItem
MenuStrip menuStrip1 = new MenuStrip();
ToolStripMenuItem ЦВЕТ = new ToolStripMenuItem();
ToolStripMenuItem черный = new ToolStripMenuItem();
ToolStripMenuItem красный = new ToolStripMenuItem();
ToolStripMenuItem синий = new ToolStripMenuItem();
ToolStripMenuItem ТОЛЩИНА = new ToolStripMenuItem();
ToolStripMenuItem пикселей1 = new ToolStripMenuItem();
ToolStripMenuItem пикселей2 = new ToolStripMenuItem();
2.
Компонент MenuStrip является контейнером пунктов меню самого верхнего уровня. Все пункты меню (и PopUp, и DropDown) являются эекземплярами класса ToolStripMenuItem.
Используя свойство Items контейнера, получаем ссылку на коллекцию класса ToolStripItemCollection.
С помощью метода AddRange() этой коллекции в коллекцию включаются ссылки на объекты-меню верхнего уровня.
// Включаем в коллекцию контейнера menuStrip1 PopUp-пункты главного меню.
menuStrip1.Items.AddRange(new ToolStripItem[ ] {ЦВЕТ, ТОЛЩИНА});
menuStrip1.Location = new System.Drawing.Point(0, 0);
menuStrip1.Name = "menuStrip1";
menuStrip1.Text = "menuStrip1";
menuStrip1.Size = new System.Drawing.Size(707, 24);
menuStrip1.TabIndex = 0;
3.
Если пункт меню является PopUp-пунктом, то через его свойство DropDownItems становится доступной коллекция класса ToolStripItemCollection.
С помощью метода AddRange() этой коллекции в коллекцию включаются ссылки на DropDown-объекты (подчиненные подпункты).
// Формируем PopUp-меню ЦВЕТ, устанавливаем свойства его пунктов
ЦВЕТ.DropDownItems.AddRange (new ToolStripItem[ ] { черный, красный, синий } );
ЦВЕТ.Name = "ЦВЕТ";
ЦВЕТ.Text = "&ЦВЕТ";
ЦВЕТ.Size = new System.Drawing.Size (51, 20);
// черный
черный.Checked = true; // установить флажок
черный.CheckState = Forms.CheckState.Checked; // запомнить состояние
черный.Name = "черный";
черный.Size = new System.Drawing.Size (152, 22);
черный.Text = "&Черный";
черный.Click += new System.EventHandler (черный_Click);
// красный
красный.Name = "красный";
красный.Size = new System.Drawing.Size (152, 22);
красный.Text = "&Красный";
красный.Click += new System.EventHandler (красный_Click);
//
// синий
// . . .
// Создаем PopUp-меню ТОЛЩИНА, устанавливаем свойства его пунктов
ТОЛЩИНА.DropDownItems.AddRange(new ToolStripItem[ ] { пикселей1,
пикселей2 });
ТОЛЩИНА.Name = "ТОЛЩИНА";
ТОЛЩИНА.Text = "&ТОЛЩИНА";
ТОЛЩИНА.Size = new System.Drawing.Size (82, 20);
// пикселей1
пикселей1.Checked = true; // установить флажок
пикселей1.CheckState = Forms.CheckState.Checked; // запомнить состояние
пикселей1.Name = "пикселей1";
пикселей1.Text = "&1 пиксель";
пикселей1.Size = new System.Drawing.Size (154, 22);
пикселей1.Click += new System.EventHandler (толщина_Click);
// пикселей2
// . . .
Дата добавления: 2019-02-08; просмотров: 581;