10865

Организация меню. Главное и контекстное меню. Компонент TActionList

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа № 3 Организация меню. Главное и контекстное меню. Компонент TActionList Для организации главного меню формы используется невизуальный компонент MainMenu. Располагается этот компонент на вкладке Standard палитры компонентов Delphi. Рассмотрим работу этого ком...

Русский

2013-04-02

1.99 MB

37 чел.

Лабораторная работа № 3

«Организация меню. Главное и контекстное меню. Компонент TActionList»

Для организации главного меню формы используется невизуальный компонент MainMenu. Располагается этот компонент на вкладке Standard палитры компонентов Delphi. Рассмотрим работу этого компонента на примере небольшого приложения.

Создадим новое приложение. Поместим на форму компонент MainMenu. Главное меню формируется при помощи дизайнера меню. Дизайнер меню можно вызвать двойным щелчком левой кнопки мыши над компонентом MainMenu или через свойство Items этого компонента в Инспекторе объектов. Дизайнер меню представляет собой редактор элементов (пунктов) меню, он автоматически предлагает создать каждый новый пункт меню, и автоматически дает им имена.

Каждый пункт меню имеет свои собственные свойства и события, которые отображаются в Инспекторе объектов при выделении пункта меню. Главное меню состоит из строки элементов, к каждому из которых может быть сформировано выпадающее меню.

За текст элемента меню отвечает его свойство Caption. В выпадающем меню текст «-» в свойстве Caption элемента воспринимается как команда по разделению, и на месте элемента меню появится разделяющая линия.  Создадим стандартное для большинства приложений меню (Рис. 1):

Рис.1. Дизайнер меню.

 

Дизайнер позволяет осуществлять редактирование меню при помощи своего контекстного меню, которое вызывается по нажатию правой кнопки мыши. Например, создадим выпадающее меню для созданного нами пункта меню «Печать». Для этого выделим этот пункт меню (Рис. 1), далее вызовем контекстное меню и выберем команду Create Submenu (создать подменю). После чего дизайнер предложит нам создать элементы этого меню (Рис. 2).

Контекстное меню дизайнера позволяет осуществлять удаление и вставку элементов меню. Для этого можно также использовать клавиши Delete и Insert.


Рис. 2. Создание подменю

Создадим подменю из двух элементов («Настройка печати», «Печать»). После этого закроем  дизайнер меню. Форма примет следующий вид (Рис. 4):

Рис. 4. Редактируемая форма. Сформированное главное меню.

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

Рис. 5. Работающее приложение. Контекстное меню формы.

Для того чтобы определить код, который должен выполняться при выборе элемента меню, необходимо создать обработчик события OnClick элемента меню. Это осуществляется в дизайнере меню: выделяется элемент меню, в Инспекторе объектов на вкладке Events выбирается событие OnClick и двойным щелчком мыши в область значения этого свойства создается обработчик события.

Фактически мы имеем два одинаковых меню (Главное и контекстное) и нам придется писать два одинаковых кода в обработчиках событий. Допустим меню «Сохранить как» вызывает сложный, громоздкий код сохранения какого-либо проекта в файл. Будет достаточно неудобно копировать два куска кода, и увеличивать размеры программы. А если будет существовать еще несколько графических кнопок, которые будут выполнять то же самое? Конечно, гораздо удобнее создать одну подпрограмму.

Для того чтобы избавить программиста от ненужных манипуляций с вызовом одного и того же кода при событиях различных компонентов, был спроектирован невизуальный компонент TActionList. Он располагается на вкладке  Standard палитры компонентов. Поместим его на форму.

Двойным щелчком вызывается редактор подпрограмм, они называются Actions (действия). Создадим одно действие (Рис. 6). Выделим строку Action1, свойству Caption действия назначим значение «Сохранить как». В Инспекторе объектов создадим обработчик события OnExecute элемента Action1. В обработчик события OnExecute поместим вызов информационного окна, которое будет сигнализировать о выбранном действии.

procedure TForm1.Action1Execute(Sender: TObject);

begin

  Showmessage('Вызвано действие сохранения');

end;

Завершим работу с редактором действий и перейдем на форму.

Рис. 6. Редактор действий.

Вызовем дизайнер меню MainMenu1. Выделим элемент «Сохранить как» и в его свойстве Action выберем наше действие Action1. Вызовем дизайнер меню PopupMenu1. Выделим элемент «Сохранить как» и в его свойстве Action выберем наше действие Action1. Запустим приложение и проверим работу меню.

Далее, если нам необходимо будет изменить код действия сохранения, нам не придется обращаться поочередно к одинаковым пунктам главного и контекстного меню. Достаточно будет лишь обратится к компоненту ActionList1, вызвать редактор действий, и изменить обработчик события OnExecute действия Action1.

Общее задание

Создайте действия при помощи компонента ActionList1 для каждого пункта меню.

Задание по вариантам:

Задание 1. Организуйте построение 4-х рисунков с помощью пунктов главного меню.

Задание 2. Организуйте построение 2-х графиков функций с помощью пунктов контекстного меню.


 

А также другие работы, которые могут Вас заинтересовать

32543. ОЦЕНКА УЧЕБНЫХ ПРОГРАММ 79.5 KB
  При оценивании следует помнить что не всякая оценка в равной мере применима ко всем программам необходимо учитывать тему цель и тип программы. Один из пунктов предназначен для краткого описания программы причем не столько ее содержания сколько других факторов которые могут вызвать интерес учителя предмет ступень обучения класс необходимое аппаратное обеспечение количество программ цена и т. Прогон программы запуск ввод данных управление. гарантируется ли работа при неправильном нажатии клавиш Точно ли указывается опасность...
32544. ИНДИВИДУАЛИЗАЦИЯ ОБУЧЕНИЯ. ОБЩИЕ ТРЕБОВАНИЯ К ОБУЧАЮЩЕЙ ПРОГРАММЕ. ЗАЩИТА ПРОГРАММНЫХ ПРОДУКТОВ 148.5 KB
  При запуске продукта проверяется наличие на ключевом носителе дискете или CDROM определенной информации записанной в защищенной от копирования области. Затраты обусловленные отсутствием защиты: недополученный доход изза несанкционированного распространения и использования продукта = Затраты обусловленные реализацией защиты: прямые затраты на реализацию или приобретение и интеграцию в продукт соответствующих средств; ограничения на программнотехническую совместимость накладываемые средствами защиты; снижение привлекательности...
32545. РЕКОМЕНДАЦИИ ПО ВНЕДРЕНИЮ ЭС В ОБРАЗОВАТЕЛЬНЫЙ ПРОЦЕСС 59 KB
  РЕКОМЕНДАЦИИ Об эффективности обучающей программы можно судить только после ее апробации. Все это выясняется в процессе апробации программы. Только так Вы сможете отчетливо увидеть достоинства и недостатки составленной Вами программы. Не пренебрегайте экспериментальной проверкой программы.
32546. УРОВНИ ПРИМЕНЕНИЯ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ В УЧЕБНОМ ПРОЦЕССЕ 135.5 KB
  КСО на данном уровне обеспечивают поддержку учебного процесса наравне с прочими некомпьютерными учебнометодическими средствами. КСО используются в пассивном качестве т. Она обусловлена тем что по сравнению с традиционными учебнометодическими средствами КСО обеспечивают новые возможности а многие существующие функции реализуются с более высоким качеством. Назовем основные преимущества КСО: создание условий для самостоятельной проработки учебного материала самообразования позволяющих обучаемому выбирать удобные для него место и...
32547. КЛАССИФИКАЦИЯ КОМПЬЮТЕРНЫХ СРЕДСТВ ОБУЧЕНИЯ. ОСНОВНЫЕ ТИПЫ ПРОГРАММ ПРИМЕНЯЕМЫХ В ОБРАЗОВАНИИ 1.04 MB
  КЛАССИФИКАЦИЯ КОМПЬЮТЕРНЫХ СРЕДСТВ ОБУЧЕНИЯ Для эффективной разработки и использования КУ и КОС нужно знать возможности и характеристики этих видов КСО. Начнем знакомство с ними с определения их места в классе КСО. Вопервых на практике разные виды КСО часто применяются в комплексе что требует знания возможностей их взаимодействия и совместного использования. Вовторых многие методические и технологические аспекты создания КУ и КОС являются общими для всего класса КСО Между различными видами КСО лежат нечеткие границы.
32548. ТИПЫ ОБУЧАЮЩИХ ПРОГРАММ С ПЕДАГОГИЧЕСКОЙ ТОЧКИ ЗРЕНИЯ. В КАКИХ СЛУЧАЯХ ЦЕЛЕСООБРАЗНО ИСПОЛЬЗОВАТЬ КОМПЬЮТЕР 54.5 KB
  Разработка и использование ЭС образовательного назначения ТИПЫ ОБУЧАЮЩИХ ПРОГРАММ С ПЕДАГОГИЧЕСКОЙ ТОЧКИ ЗРЕНИЯ. ТИПЫ ОБУЧАЮЩИХ ПРОГРАММ с педагогической точки зрения В настоящее время в учебном процессе используется большое число обучающих программ весьма отличающихся по различным параметрам. Но когда речь идет о рекомендациях по разработке обучающих программ необходимо прежде всего уточнить какие именно программы имеются в виду. Ведь различие между интеллектуальными обучающими программами и программами на отработку умений и навыков...
32549. ОБЩАЯ ХАРАКТЕРИСТИКА ПРОЕКТИРОВАНИЯ ОБУЧЕНИЯ. УРОВНИ ПРОЕКТИРОВАНИЯ ОБУЧАЮЩИХ ПРОГРАММ 48 KB
  Разработка и использование ЭС образовательного назначения ОБЩАЯ ХАРАКТЕРИСТИКА ПРОЕКТИРОВАНИЯ ОБУЧЕНИЯ. ОБЩАЯ ХАРАКТЕРИСТИКА ПРОЕКТИРОВАНИЯ ОБУЧЕНИЯ В настоящее время наметилось два подхода к проектированию обучающих программ. В принципе можно создать несколько эффективных обучающих программ и без психологической теории обучения и технологии компьютерного обучения например путем проб и ошибок. Проектирование обучающих программ должно базироваться на надежном психологическом фундаменте причем прежде всего необходимо проектировать...
32550. КТО СОЗДАЕТ ЭЛЕКТРОННЫЕ СРЕДСТВА ОБРАЗОВАТЕЛЬНОГО НАЗНАЧЕНИЯ. РЕКОМЕНДАЦИИ ПО ПРОЕКТИРОВАНИЮ УЧЕБНЫХ ЦЕЛЕЙ. КАКИЕ МЕТОДЫ ОБУЧЕНИЯ ИСПОЛЬЗОВАТЬ 151.5 KB
  Типовой состав разработчиков программного средства Выделяются четыре базовые категории: авторы учебного материала; компьютерные методисты; системотехники КСО; специалисты по реализации КСО. В создании конкретного КСО участвуют как правило один компьютерный методист и один системотехник КСО. Компьютерный методист это специалист владеющий компьютерной дидактикой и ориентирующийся в ПО которая рассматривается в КСО. В круг его задач входят формирование структуры КСО выбор психологопедагогической стратегии и проработка используемых...
32551. Контакторыи. Коммутация силовых цепей электродвигателей 281.61 KB
  По роду коммутируемого тока контакторы делят на контакторы постоянного и переменного тока. Как правило род тока в цепи управления которая питает электромагнитный привод совпадает с родом тока главной коммутируемой цепи. Однако известны случаи когда катушки контакторов переменного тока получают питание от цепи постоянного тока. Конструктивная схема контактора постоянного тока показана на рис.