русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Динамическая настройка меню


Дата добавления: 2013-12-24; просмотров: 1706; Нарушение авторских прав


Конструктор меню

Для создания и изменения меню в процессе разработки приложения в среде Delphi предназначен Конструктор меню (Menu Designer). Запуск Конструк­тора меню можно выполнить по команде Menu Designer (Конструктор ме­ню) контекстного меню компонента MainMenu или PopupMenu, а также с по­мощью двойного щелчка мыши на этих же компонентах. Предварительно один из этих компонентов следует добавить на форму. Напомним, что ком­поненты MainMenu и PopupMenu размещаются на странице Standard (Стандартная ) Палитры компонентов.

Конструктор меню похож на текстовый редактор и предоставляет возможность достаточно просто и удобно конструировать меню любого типа. Меню при конструировании имеет тот же вид, что и при выполнении приложения. Вид меню при конструировании с помощью Конструктора меню показан на рис. 7.4.При работе с Конструктором меню используются команды его контекстного меню (рис. 7.4), вызываемого щелчком правой кнопкой мыши при разме­щении указателя в области Конструктора меню. С их помощью можно выполнить такие действия, как добавление (Insert) и удаление (Delete) пунк­та меню, создание подменю (Create Submenu), выбор меню (Select Menu).

При конструировании меню можно также перемещать указателем мыши пункты меню и подменю по технологии drag-and-drop. Используемый со­вместно с Конструктором меню Инспектор объектов позволяет управлять свойствами отдельных пунктов меню. В частности, наименование пункта меню задается путем присвоения нужного значения его свойству caption.

С помощью Конструктора создание и настройка меню ведется при создании приложения. Кроме того, меню можно создавать или изменять динамически непосредственно при выполнении приложения. Например, возможно:

  • создать новое меню любого типа или удалить его;
  • заблокировать или разблокировать отдельные пункты;
  • сделать пункт меню видимым или невидимым;
  • добавить или удалить пункт меню;
  • изменить название пункта;
  • установить или убрать отметку пункта;
  • переключить форму с одного главного меню на другое.

Эти возможности обеспечиваются установкой свойствам пунктов меню тре­буемых значений и вызовом соответствующих методов.



Для добавления пунктов меню используются методы Add и insert, для уда­ления пунктов меню используется метод Delete.

Процедура Add (item: TMenuitem) добавляет определяемый параметром item элемент в конец подменю, которое вызвало этот метод. Если подменю не существовало, то оно создается.

Пример. Добавление пункта меню.

procedure Forml.mnuItemAddClick(Sender :TSender);

var Newltem : TMenuitem;

begin

NewItem := TMenuitem.Create(Self);

NewItem.Caption := 'Новый элемент';

mnuFile.Add(NewItem);

end;Добавление нового пункта производится в конец списка команд меню Файл. Добавляемый пункт имеет заголовок Новый элемент. Предварительно новый пункт создается конструктором Create.

Процедура Insert (Index: Integer; Item: TMenuItem) , в отличие от предыдущего метода, добавляет новый пункт меню на указанное положение. Параметр index определяет позицию в массиве элементов меню, на которую вставляется новый пункт. Если значение параметра index выходит за преде­лы допустимого диапазона, например, больше, чем число подэлементов модифицируемого пункта меню, то возникает исключительная ситуация.

Процедура Delete (index: integer) удаляет указанный пункт меню. Если удаляемый пункт имеет подпункты, то они также удаляются.

Пример. Удаление пункта меню.

procedure Forml.mnuItemDeleteClick(Sender :TSender);

begin

if mnuFile.Items[2].Caption = 'Второй элемент'

then mnuFile.Delete(2); end;

Процедура выполняет удаление пункта из подменю Файл. Удаляемый пункт имеет заголовок Второй элемент и находится на второй позиции. Предвари­тельно производится проверка, действительно ли удаляется пункт с нужным названием.

Форма может иметь более одного главного меню. Это используется, например, в случае, когда одно из них содержит заголовки на английском языке, а другое — на русском. Для реализации такой возможности на форму следу­ет поместить два компонента MainMenu и подготовить соответствующие ме­ню. После этого при выполнении программы возможно подключение к форме любого из этих меню. Для подключения к форме главного меню ис­пользуется свойство Menu формы.

Пример. Переключение между двумя главными меню.

if Forml.Menu = EnglishMenu

then Forml.Menu := RussianMenu else Forml.Menu := EnglishMenu;

Меню имеют названия EnglishMenu и RussianMenu. Код, выполняющий пе­реключение меню, может быть включен в соответствующий обработчик.

Напомним, что Menu является одним из свойств формы, указывающим на главное меню, которое в настоящий момент является активным.

 



<== предыдущая лекция | следующая лекция ==>
Контекстное меню | Преобразование рисунков в битовое изображение.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.003 сек.