Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Технология задания действий средствами ActionList

Читайте также:
  1. I Журнал боевых действий 9-го Финляндского стрелкового полка.
  2. I'm not up to such hard work in this hot weather. — Я не способен выполнять такие сложные задания в такую жару.
  3. I. Информационные задания
  4. II Собрать схему усилителя в соответствии с номером задания.
  5. II. ПРАКТИЧЕСКИЕ ЗАДАНИЯ
  6. II. Тестовые задания к модулю V
  7. II. Технология подготовки журналистских произведений

 

1. На этапе анализа задачи устанавливается список действий, предназначенных обеспечить функциональность приложения. Отдельно определяются те действия, которые предполагается дублировать в различных командах меню и управляющих кнопках.

2. Определяются названия для этих действий, а также категории, к которым их можно отнести и определяются названия категорий. Эти названия пойдут в следующие свойства: Category, Caption и Name компонента ActionList.

a) Свойство Category (категория) не имеет отношения к выполнению приложения. Задание категории просто позволяет в процессе проектирования сгруппировать действия по их назначению.

b) Свойство Caption будет определять название действия.

c) Свойство Name будет определять имя действия, под которым это действие будет известно в программе.

 

Названия должны быть осмысленными и отражать суть! Например, составлен перечень действий: задать цвет формы, задать цвет Memo, задать шрифт метки, задать шрифт Edit, взять файл, сохранить файл, выйти из программы.

Можно взять следующие названия:

o Имена категорий: «Цвет», «Фонт», «Файл». «Выход».

o Названия действий: «Цвет формы», «Цвет Memo», ….

o Имена действий: actColorForm, actFontLabel, actSave, actExit, ….

 

 

3. Поместить на форму компонент ImageList (страница Win32). К ImageList подсоединить список графических образов (16x16), которые будут отображаться на кнопках и командах.

4. Поместить на форму компонент ActionList (страница Standard).

5. Установить в свойстве Images компонента ActionList — имя списка ImageList, размещенного на форме и заполненного изображениями.

6. Открыть редактор действий, например, двойным щелчком на компоненте ActionList. В результате откроется окно ‘Editing Form1->ActionList1’, как это показано справа на рис.3.

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

 

 

New Action Ins

Рис. 3. Для каждой “New Action List”(справа) заполнить поля Category, Caption, Name (слева)

 

7. Для каждого действия из заготовленного списка (смотри пункты 1-2) выполнить:

a. Добавить новое действие либо с помощью кнопки “New Action Ins”, как это показано на рис. 3, либо с помощью контекстного меню.

b. В окне Инспектора объектов заполнить поля: Name, Caption, Category (рис. 3 слева).

c. Для каждого действия указать свойство Imagelndex, которое является индексом (начиная с 0) изображения, соответствующего данному действию в отдельном компоненте списка изображений ImageList. Этот индекс передастся в дальнейшем компонентам, связанным с данным событием — разделам меню, кнопкам.

 

Результаты изменения отразятся в окне Object TreeView на элементе ActionList1, как это показано на рис. 4.

 

Каждое действие, которое вы внесли в список — это объект типа TAction В Инспекторе Объектов для каждого действия вы можете установить помимо свойств Name, Caption, Category, можно установить и другие, например: Shortcut — «горячие» клавиши, Hint — подсказки в ярлычках и панели состояния, Enabled, Visible,. Checked (пока отложить).

 

Рис. 4. Представление элемента ActionList1 в окне Object TreeView

4. Для каждого из действий создать обработчик события. Для этого обратиться к событиям OnExecute, как это показано на рис. 5, в который вписывается соответствующий текст. Например, для действия “Выход”:

void __fastcall TForm1::actExitExecute(TObject *Sender)

{

Close ();

}

 

Двойной щелчок

Рис.5. Создание обработчика событий для соответствующего действия

5. Присоединить действия к нужным кнопкам, пунктам меню и т.п.

 

 

 
 


1. Назначение компонента ActionList?

2. Какие действия рекомендуется включать в ActionList?

3. Технология создания списка действий средствами ActionList?

4. Как подсоединить действие из ActionList к кнопке? К команде меню?

5. Как заполнить его пункты из ActionList?

6. Как заполнить контекстное меню из ActionList?

 

Меню

 

Одним из основных элементов интерфейса Windows программ является меню. В приложениях, написанных на C++Builder, могут быть реализованы меню двух основных видов:

Главное меню (MainMenu). Такое меню принадлежит форме и отображается вместе с ней под панелью заголовка окна. Если в приложении несколько форм, то для удобства можно объединять меню всех активных форм в одном.

Всплывающее меню (Pop up). Такое меню предусмотрено почти у всех компонентов (т.е. свойство на стадии разработки). Во время работы программы такое меню возникает (всплывает) при нажатии правой кнопки мыши на этом компоненте. Предусмотрено такое меню и у формы.

Меню является иерархическими структурами (деревом), состоящими из пунктов меню. Каждый пункт может быть выбран. Пункт меню может быть выбран вследствие или щелчка кнопкой мыши, или нажатия соответствующих клавиш на клавиатуре, или вызова из процедуры в программе.

 

На самом нижнем уровне меню лежат команды меню — пункты, с которыми связана та или иная процедура, реализующая реакцию приложения на выбор этого пункта меню. Команды меню объединяются в подменю. Подменю — это пункты, выбор которых позволяет открыть список пунктов меню или других подменю.

Каждый пункт меню является компонентом TMenuItem (нет на палитре компонент). Каждый компонент TMenuItem имеет свойства:

Enable - запрещает исполнение этого пункта;

Visible - указывает является ли видимым этот пункт меню; если значение False, то в меню нет строки с этим пунктом;

Checked, RadioItem — установка этих свойств в значение True, позволяет организовать на пунктах меню элементы подобные компонентам CheckBox и RadioButton. При этом установку/снятие маркеров ("галочек" или точек) необходимо организовывать программно установкой свойства Checked.

ShortCut — позволяет выбрать и установить комбинацию "горячих клавиш" для активизации этой команды с клавиатуры.

Создание главного меню

Из палитры компонент (страница Standard) на форму перетаскивается компонент TMenu. Компонента отображается на форме в виде иконки неизменяемого размера. Помимо этого появляется строка меню на форме, с единственным пунктом пустышкой.

Конструктор меню (или Дизайнер Меню) запускается через свойство Items в Инспекторе Объектов. Для запуска необходимо дважды щелкнуть на значении свойства Items, где написано «(Меню)». Можно также щелкнуть на компоненте MainMenu на форме и воспользоваться контекстным меню от правой кнопки мыши. Сначала меню состоит из одного пустого элемента. Добавление пункта меню заключено в заполнении пустого элемента и выполнении “Enter”. Для вставки можно использовать “Insert”. Для удаления – “Delete”. Если перед некоторой буквой в тексте команды поставить знак &, то во время выполнения программы соответствующая буква будет изображаться с подчеркиванием. Эту букву можно использовать в качестве “горячей” клавиши.

Cвойство Caption задает наименование раздела меню. При использовании ActionList следует вручную вписать название категории, заданное в ActionList. После этого справа появляется пустышка для наименования другого раздела меню (заполняется по потребности), а внизу пустышка для первого пункта меню в этом разделе. При использовании ActionList для “пустышки” нужно просто сделать выбор в свойстве Action и наименование раздела встанет автоматически. По мере заполнения пунктов меню, появляется пустышка для новых пунктов.

Чтобы во время работы программы при выборе пункта меню (без ActionList) происходило действие необходимо: на форме выбрать пункт меню; в Object Inspector, на странице Events, в строке onClick, необходимо указать имя процедуры исполняющейся при выборе этого пункта меню. Тогда при выборе пункта меню, во время выполнения программы, инициируется событие onClick и запускается эта процедура обработчик.

 

Создание всплывающего меню

 

Создается подобно главному меню. Но это меню имеет только пункты (одна колонка команд). Чтобы Pop Up меню вызывалось по нажатию правой кнопки мыши во время работы программы, необходимо его привязать к конкретному компоненту или к форме. Для этого выбирают компонент и, в свойстве PopupMenu инспектора объектов, указывают имя необходимого ранее созданного Pop Up меню.


Дата добавления: 2015-07-10; просмотров: 156 | Нарушение авторских прав


Читайте в этой же книге: Создания окон диалогов | Описание компонента RichEdit | Предусмотреть кнопки, дублирующие команды из главного меню. |
<== предыдущая страница | следующая страница ==>
Методические указания| Подсоединение действия из списка Action

mybiblioteka.su - 2015-2024 год. (0.01 сек.)