Студопедия

Главная страница Случайная страница

Разделы сайта

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






Компонент MainMenu - главное меню






MainMenu, расположеный на странице Standard, это невизуальный компонент, т.е. место его размещения на форме в процессе проектирования не имеет никакого значения для пользователя - он все равно увидит не сам компонент, а только меню, сгенерированное им.

Основное свойство компонента - Items. Его заполнение производится с помощью Конструктора Меню, вызываемого двойным щелчком на компоненте MainMenu или нажатием кнопки с многоточием рядом со свойством Items в окне Инспектора Объектов. В результате откроется окно. В этом окне вы можете спроектировать меню.

Можно создавать меню двух основных видов: главное и контекстное. Главное меню принадлежит форме и отображается под ее заголовком. Контекстное[15] меню может быть предусмотрено для самой формы и других ее объектов (которые соответствуют управляющим элементам Windows, имеющим свойство PopupMenu). Оно появляется при щелчке правой кнопки мыши на соответствующем объекте.

Редактор меню позволяет легко вставлять меню в форму. Пункты меню добавляются, изменяются или удаляются также в окне редактора[16]. Меню на форме всегда видимы, поэтому для их тестирования приложение запускать не требуется.

Принципы работы с меню очень просты. Каждому пункту меню соответствует свой объект класса TMenuItem. При выборе пункта пользователем инициализируется событие соответствующего компонента onclick и вызывается его обработчик. Имена пунктам присваиваются по умолчанию в порядке создания (свойство Name). Текст пункта соответствует свойству Caption. Если в тексте имеется символ ‘& ’, то следующий за ним символ является акселератором (горячей клавишей). Например, меню & Edit допускает активизацию при нажатии Alt+E. Если в качестве значения Caption введен только один символ ‘-’, то этот пункт служит разделителем.

Чтобы контекстное меню привязать к какому-либо объекту, следует значению его свойства PopupMenu присвоить имя меню. Если меню уже созданы, имя может быть выбрано из списка. Таким образом, одно и то же меню может быть связано с несколькими объектами. Какой из них вызвал меню, программа может определить во время выполнения, путем анализа значения свойства PopupComponent. Это удобно сделать в обработчике события OnPopup, возникающего перед каждым показом всплывающего меню на экране. Для программного обращения к меню в определенном месте программы следует вызвать метод Popup(int X, int Y), где X, Y – координаты левого верхнего угла панели меню.

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

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

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.