- •Часть 1. Среда Delphi Тема 1. Объектно-ориентированное программирование
- •Тема 2. Элементы интерфейса
- •Окно проектировщика формы
- •Окно инспектора объектов
- •С оздание и сохранение проекта и файла модуля Как открыть новый проект?
- •Как открыть существующий проект?
- •Тема 3. Характеристика проекта. Состав проекта
- •Файлы формы
- •Файлы модулей
- •Файл ресурсов
- •Параметры проекта
- •Тема 4. Компиляция и выполнение проекта
- •Тема 5. Основные объекты
- •Основные свойства объектов
- •Основные события
- •Часть 2. Язык Object Pascal
- •Тема 1. Основные понятия
- •Словарь языка
- •Структура программы
- •Комментарии
- •Тема 2. Данные Виды данных
- •Типы данных
- •Простые типы данных
- •Структурные типы данных
- •Тема 3. Выражения
- •Арифметические выражения
- •Логические выражения
- •Строковые выражения
- •Тема 4. Простые операторы Оператор присваивания
- •Оператор перехода
- •Тема 5. Работа с графикой
- •Оператор доступа
- •Рисование многоугольников в Delphi
- •Закрашивание произвольной области в Delphi
- •Работа с несколькими формами
- •Объект Shape (Фигура)
- •Тема 6. Работа с датой и временем Объект Timer
- •Свойства компонента Timer
- •Манипулирование датами и временем
- •Тема 7. Встроенные окна диалога.
- •Окно ввода данных
- •InputВох(заголовок, подсказка, значение)
- •Окно вывода сообщений
- •Тема 8. Структурированные операторы
- •Составной оператор
- •Условный оператор
- •Оператор выбора
- •Операторы цикла
- •Тема 9. Подпрограммы
- •Процедуры
- •Функции
- •Параметры и аргументы
- •Тема 10. Работа с элементами выбора
- •1. Флажок (CheckBox)
- •2. ПереключательRadioButton
- •Свойства компонента RadioButton
- •Свойства компонента tRadioGroup
- •3. Простой список ListBox
- •Свойства компонента ListBox
- •4. Комбинированный список ComboBox
- •Свойства компонента СотbоВох
- •Значения для свойства Style
- •Тема 11. Работа с меню
- •Основные свойства пункта меню:
- •Главное меню
- •Конструктор меню
- •Динамическая настройка меню
- •Тема 12. Массивы
- •Объявление массива
- •Операции с массивами
- •Вывод массива
- •Ввод массива
- •Использование компонента StringGrid
- •Использование компонента Memo
- •Поиск минимального (максимального) элемента массива
- •Сортировка массива
Конструктор меню
Для создания и изменения меню в процессе разработки приложения в среде Delphi предназначен Конструктор меню (Menu Designer). Запуск Конструктора меню можно выполнить по команде Menu Designer (Конструктор меню) контекстного меню компонента MainMenu, а также с помощью двойного щелчка мыши на этом же компоненте.
К онструктор меню похож на текстовый редактор и предоставляет возможность достаточно просто и удобно конструировать меню любого типа. Меню приконструировании имеет тот же вид, что и при выполнении приложения.
При работе с Конструктором меню используются команды его контекстного меню, вызываемого щелчком правой кнопкой мыши при размещении указателя в области Конструктора меню. С их помощью можно выполнить такие действия, как добавление (Insert) и удаление (Delete) пункта меню, создание подменю (Create Submenu), выбор меню (Select Menu).
При конструировании меню можно также перемещать указателем мыши пункты меню и подменю по технологии drag-and-drop. Используемый совместно с Конструктором меню Инспектор объектов позволяет управлять свойствами отдельных пунктов меню. В частности, наименование пункта меню задается путем присвоения нужного значения его свойству caption.
Динамическая настройка меню
С помощью Конструктора создание и настройка меню ведется при создании приложения. Кроме того, меню можно создавать или изменять динамически непосредственно при выполнении приложения. Например, возможно:
создать новое меню любого типа или удалить его;
заблокировать или разблокировать отдельные пункты;
сделать пункт меню видимым или невидимым;
добавить или удалить пункт меню;
изменить название пункта;
установить или убрать отметку пункта;
переключить форму с одного главного меню на другое.
Эти возможности обеспечиваются установкой свойствам пунктов меню требуемых значений и вызовом соответствующих методов.
Для добавления пунктов меню используются методы Add и insert, для удаления пунктов меню используется метод Delete. Процедура Add (item: TMenuitem) добавляет определяемый параметром item элемент в конец подменю, которое вызвало этот метод. Если подменю не существовало, то оно создается.
Пример. Добавление пункта меню.
procedure Form1.mnuItemAddClick(Sender :TSender);
var Newltem :TMenuitem;
begin
Newltem := TMenuitem.Create(Self);
Newltem.Caption := 'Новый элемент1;
mnuFile.Add(Newltem) ;
end;
Добавление нового пункта производится в конец списка команд меню Файл. Добавляемый пункт имеет заголовок Новый элемент. Предварительно новый пункт создается конструктором Create.
Процедура Insert (Index: Integer; Item: TMenuItem), в отличие от предыдущего метода, добавляет новый пункт меню на указанное положение. Параметр index определяет позицию в массиве элементов меню, на которую вставляется новый пункт.
Процедура Delete (index: integer) удаляет указанный пункт меню. Если удаляемый пункт имеет подпункты, то они также удаляются.
Пример. Удаление пункта меню.
procedure Form1.mnuItemDeleteClick(Sender :TSender);
begin
if mnuFile.Items[2].Caption = 'Второй элемент' then mnuFile.Delete(2);
end;
Процедура выполняет удаление пункта из подменю Файл. Удаляемый пункт имеет заголовок Второй элемент и находится на второй позиции. Предварительно производится проверка, действительно ли удаляется пункт с нужным названием.