TMainMenu - главное меню формы (программы)
Компонент класса TMainMenu определяет главное меню формы. На форму можно поместить сколько угодно объектов этого класса, но отображаться в полосе меню в верхней части формы будет только тот из них, который указан в свойстве Menu формы.
После установки компонента на форму необходимо создать его опции. Для этого следует дважды щелкнуть по компоненту левой кнопкой мыши либо нажать на нем правую кнопку и выбрать продолжение Menu Designer в появившемся вспомогательном меню, либо, наконец, щелкнуть по кнопке в правой половине строки Items Инспектора Объектов.
Создание опций не вызывает проблем. Перейдите в окно Инспектора Объектов и введите текст опции в строке Caption, после чего нажмите Enter - опция готова и можно переходить к следующей. Каждая опция главного меню может раскрываться в список подопций или содержать конечную команду. Для создания подопций щелкните мышью по строке ниже опции и введите первую под опцию. Продолжайте ввод, пока не будет создан весь список подопций, после чего щелкните по пустому прямоугольнику справа от первой опции и введите вторую опцию. Процесс гораздо сложнее описать, чем выполнить.
В названиях опций можно указать символ «&» перед тем символом, который определит клавишу быстрого выбора опции (в терминологии Windows такие клавиши называются акселераторами). Например, опцию Файл можно выбрать сочетанием клавиш Alt+Ф. При создании меню эта опция в строке Caption Инспектора Объектов содержала текст &Файл.
Если вы захотите вставить разделительную черту, отделяющую группы подопций, назовите очередной элемент меню именем «-».
Для создания разветвленных меню, т.е. таких, у которых подопции вызывают новые списки подопций, щелкните по подопций и нажмите Ctrl+Вправо, где Вправо - клавиша смешения курсора вправо. Такого эффекта можно добиться после щелчка правой кнопкой мыши на подопции и выборе продолжения Create Submenu.
Каждый элемент меню является объектом класса TMenuItem. Свойства этого класса описаны в следующей таблице. Термин «родительская опция» означает опцию, выбор которой приводит к раскрытию подменю с данной опцией.
PROPERTY Bitmap: TBitmap; | Содержит ссылку на связанное с опцией изображение. Это изображение (если оно есть) появляется слева от опции. Свойство игнорируется, если установлено свойство Imagelndex (см. ниже). |
PROPERTY Break: TMenuBreak; | Позволяет создать много колончатый список подменю |
PROPERTY Checked: Boolean; | Если True, рядом с опцией появляется галочка. |
PROPERTY Command: Word; | Используется при разработке приложений, обращающихся непосредственно к API-функциям Windows. |
PROPERTY Count: Integer; | Содержит количество опций в подчиненном меню. |
PROPERTY Default: Boolean; | Определяет, является ли данная опция подменю умалчиваемой? |
PROPERTY GroupIndex: Byte; | Определяет групповой индекс для зависимых опций |
PROPERTY ImageIndex: Integer; | Содержит индекс связанного с опцией изображения из компонента TimageList. Это изображение (если оно есть) появляется слева от опции. Если свойство имеет значение -1, с опцией не связано никакого изображения из TimageList. |
PROPERTY Items[Index: integer]: TMenuItem; | Позволяет обратиться к любой опции подчиненного меню по ее индексу. |
PROPERTY MenuIndex: Integers- | Определяет индекс опции в списке Items родительской опции. |
PROPERTY RadioItem: Boolean; | Определяет, зависит ли данная опция от выбора других опций в той же группе Grouplndex. Только одна опция группы может иметь True в свойстве Checked. Рядом с такой опцией вместо галочки изображается круг. |
PROPERTY Shortcut: TShortCut | Задает клавиши-акселераторы для быстрого выбора данной опции. |
В Delphi 4 появилась возможность связывать с опциями меню небольшие изображения. Эти изображения можно задать либо свойством BitMap, либо свойством Imagelndex (этих свойств компонентов ТМепи нет в предыдущих версиях Delphi). Изображение (если оно есть) показывается слева от опции. Опции New, NewForm, Open и т.д. снабжены небольшими пиктограммами. Введение пиктограмм в меню, с одной стороны, повышает наглядность меню, а с другой - способствует унификации пиктограмм в рамках механизма действий. Если опция меню связана с каким-то действием своим свойством Action, а компонент TActionList, в котором это действие описано, в свою очередь, связан с хранилищем пиктограмм TImageList, индекс нужной пиктограммы можно задать в свойстве Imagelndex. В этом случае пиктограмма, указанная в свойстве BitMap (если она указана в нем) игнорируется.
Тип TMenuBreak определен следующим образом:
TYPE TMenuBreak = (mbNone, mbBarBreak, mbBreak);
Свойство Break по умолчанию имеет значение mbNone. Два других возможных значения этого свойства используются для создания много колончатых списков подменю. Значение mbBarBreak заканчивает предыдущую колонку и начинает новую. Эта опция меню будет открывать новую колонку, которая отделяется от предыдущей вертикальной чертой. Значение mbBreak также создает новую колонку, но не вставляет разделительную черту. Эти значения игнорируются в опциях самого первого уровня. В окне конструктора много колончатое меню отображается как обычное.
Если в опции Default установлено значение True, такая опция выделяется цветом и выбирается двойным щелчком мыши на родительской опции. Только одна опция в подменю может быть умалчиваемой.
В отличие от других видимых компонентов строка Hint для опций меню задает только расширенное сообщение, которое отображается на панели статуса.
Для элемента меню определено единственное событие OnClick, которое возникает при щелчке на опции или при нажатии Enter, если в этот момент, опция была выбрана (подсвечена). Обработчик события становится до после двойного щелчка на опции в окне конструктора меню.
Дата добавления: 2016-06-15; просмотров: 2543;