- •Часть 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
- •Поиск минимального (максимального) элемента массива
- •Сортировка массива
Тема 11. Работа с меню
Практически все приложения Windows имеют меню, которое является распространенным элементом пользовательского интерфейса. Меню представляет собой список объединенных по функциональному признаку пунктов, каждый из которых обозначает команду или вложенное меню (подменю). Выбор пункта меню равносилен выполнению соответствующей команды или раскрытию подменю.
Обычно в приложении имеется главное меню и несколько контекстных (всплывающих или локальных) меню. Главное меню используется для управления работой всего приложения, каждое из контекстных меню служит для управления отдельным интерфейсным элементом.
Пункт меню представляет собой объект типа TMenuItem. Отдельный пункт меню обычно виден как текстовый заголовок, описывающий назначение пункта меню.
Основные свойства пункта меню:
caption – содержит строку текста, отображаемую как заголовок пункта меню. Если в качестве заголовка указать символ "-", то на месте соответствующего пункта меню отображается разделительная линия.
checked – определяет, является ли пункт выделенным. Если свойству установлено значение True, то пункт выделен и в его заголовке появляется специальная отметка.
count – задает количество подпунктов в данном пункте меню. Это свойство есть у каждого пункта меню. Если какой-либо пункт не содержит подпунктов, то свойство Count имеет значение нуль;
Enabled – определяет, активен ли пункт;
items – является массивом подпунктов текущего пункта меню. Каждый пункт меню, имеющий подпункты (вложенное меню), перечисляет их в свойстве items. Это свойство позволяет получить доступ к подпунктам по их позициям в массиве: items [0], items [l] и т. д.;
visible типа Boolean – определяет, виден ли пункт на экране.
Основным событием, связанным с пунктом меню, является событие onclick, возникающее при выборе пункта с помощью клавиатуры или мыши. В приложении для генерации события Onclick или для имитации выбора пункта меню можно использовать метод click. Вызов этой процедуры эквивалентен выбору соответствующего пункта меню пользователем.
Пример. Имитация выбора пункта меню.
procedure TForm1.Button1Click(Sender: TObject);
begin
mnuLockltem.Click;
end;
Нажатие кнопки Button1 приводит к тому же эффекту, что и выбор пункта Меню mnuLockltem.
Для создания меню при разработке приложения используется Конструктор меню. Меню также можно создавать или изменять динамически – непосредственно в ходе выполнения приложения.
Главное меню
Г лавное меню располагается в верхней части формы под ее заголовком и содержит наиболее общие команды приложения. В Delphi главное меню представлено компонентом MainMenu вкладки Standard.
По внешнему виду главное меню представляет собой строку, и его также называют строчным. Если пункты меню не умещаются на форме в одну строку, то они автоматически переносятся на следующую строку.
При изменении размеров формы соответствующим образом меняются размеры и размещение пунктов строчного меню. Отметим, что уменьшение ширины формы ограничено размером самого длинного заголовка, имеющегося в меню.
При проектировании приложения на форме видны компонент MainMenu и соответствующая ему строка меню. Отображаемая строка меню выглядит и ведет себя так же, как и при выполнении программы. Для перехода на этапе проектирования приложения в процедуру обработки события onclick пункта меню следует выбрать этот пункт с помощью клавиатуры или мыши.