понедельник, 4 октября 2010 г.

Menus & Toolbars 1

Вчера я закончил рассказывать про общие компоненты (Common Controls) среды программирования Visual Studio. Довольно тяжело это было, так как только поверхностное знакомство с этими компонентами заняло аж восемь отдельных статей. Но, должен сказать, что не все было в них рассмотрено. Пожалуй, в дальнейшем я рассмотрю некоторые элементы из той серии более подробно (например – ListView, RichTextBox, TreeView). А может быть – и еще какие-нибудь.

Итак, вчера закончили рассматривать Common Controls, следующая вкладка (Containers) уже была нами рассмотрена в прошлом месяце. Поэтому – плавно двигаемся дальше, и  - на очереди у нас компоненты из вкладки «Menus & Toolbars» - Меню и панели инструментов. Поэтому – сегодня поговорим именно о них.

Давайте посмотрим на то, сколько у нас элементов находятся в этой вкладке. Логично было бы начать с первого элемента, но в этот раз мы поступим по другому – начнем изучение со второго компонента:



MenuStrip:

Почему мы начали изучение именно с этого компонента? Да потому, что MenuStrip – это именно то самое меню, которое мы себе представляем. Так что вполне нормально начать изучение именно с него. И еще – остальные элементы строятся на основе MenuStrip. Итак, если мы поместим этот компонент на главную форму – то у нас одновременно появится и визуальный элемент (панелька, привязанная к верхней границе формы) и не визуальный элемент (который будет находиться на нижней панели):



Не визуальный элемент нужен для того, чтобы быстро перейти к его свойствам. Поэтому – разберемся подробнее с визуальным элементом. Обычно там располагается надпись «Type Here». Нажимаем на нее – сразу же появляется курсор (как на картинке сверху), а снизу и справа – тоже появляются такие же кнопки с надписью «Type Here» - то есть можно продолжить меню либо вниз (создать еще пункт меню), либо вправо (создать раздел в меню). Можно сразу вводить названия наших пунктов меню, либо – выбрать то, что нам предлагает редактор меню, наведя на правый край кнопки «Type Here» и нажав на соответствующую стрелку:



Появился выпадающий список. MenuItem – создает новый элемент меню (то, что по умолчанию создается). ComboBox и TextBox, я думаю, должно быть понятно. Самым полезным для нас здесь будет Separator – разделитель. С помощью него можно группировать разделы меню. Остальные элементы я еще не встречал в реальных проектах, так что останавливаться не буду на них подробно.

Ладно – вы создали необходимое для вас меню. Чтобы его запрограммировать – вам нужно дважды щелкнуть по первому пункту меню – загрузится редактор события Click для данного пункта – именно то, что нам и нужно. Теперь вы можете поместить туда программную часть того, что необходимо выполнять после того, как пользователь нажал на меню. Самые интересные свойства для MenuStrip – это Image (загрузка картинок – мы уже рассматривали подобное свойство, так что вы знаете, как там работать), ShortcutKeys (можно задать горячие клавиши для меню). В принципе – этих данных уже должно хватить, чтобы начать программировать функциональные приложения с использованием основного меню. А мне надо переходить дальше.

ContextMenuStrip:

Вот теперь переходим к первому элементу. Он – очень сильно похож на основное меню, но – принадлежит на главной форме – а конкретному элементу и это меню появляется по нажатии правой клавишей мыши на этом элементе. Вообще – ContextMenuStrip это не визуальный компонент. Но, когда мы выделяем его в списке не визуальных компонентов – то появляется его визуальный редактор – и нам можно редактировать пункты меню. Это происходит так же, как и при редактировании основного меню, так что рассматривать этот процесс не будем. Предположим, вы создаете контекстное меню для ListBoxa – создали – и надо связать ListBox и созданное меню. Для этого находим у компонента ListBox свойство ContextMenuStrip – в выпадающем списке найдите то контекстное меню, которое вы создавали – и все, теперь, при нажатии правой клавишей мыши на ListBoxe – появится именно наше выбранное контекстное меню. Больше ничего делать не надо:



Ух, какая большая тема получилась. С тремя оставшимися компонентами познакомимся чуть позднее, не буду все в одну статьи толкать. Возможно даже – и сегодня ее опубликую, посмотрим как получится.

Кстати, а как вы думаете, как лучше всего удалять волосы на ногах(и вообще - везде, для современных женщин - это очень важно)? Кстати, - это не для меня! Вот, например – есть хорошая эпиляция сахарной пастой – может, если кому надо – и подойдет. Думаю – вещь хорошая, но на себе проверять не буду =)

Комментариев нет:

Отправить комментарий