Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
laboratornye_Delphi.doc
Скачиваний:
16
Добавлен:
17.05.2015
Размер:
2.78 Mб
Скачать

Панель tGroupBox (группы компонентов)

Компонент TGroupBox используют для размещения на панели группы из нескольких компонентов и улучшения дизайна окна приложения. Группа компонентов помещается в форму с помощью кнопки на стандартной панели инструментов. Свойства этого компонента аналогичны описанным ранее.

Пример 15.3. С помощью флажков выбирают продукты из списка и по нажатию кнопки в многострочный редактор выводятся эти названия. Экранная форма программы показана на рис. 15.3.

Обработка события имеет вид:

procedure TFrmEx1.BtnResultClick(Sender: TObject);

var pr:boolean;

str:string;

begin

pr:=false;

MemResult.Clear;

str:='Выбраны следующие продукты: ';

if ChBBird.Checked then

begin

pr:=true;

str:=str+'птица, ';

end;

if ChBFish.Checked then

begin

pr:=true;

str:=str+'рыба, ';

end;

if ChBFruits.Checked then

begin

pr:=true;

str:=str+'фрукты, ';

end;

if ChBMeat.Checked then

begin

pr:=true;

str:=str+'мясо, ';

end;

if ChBMilk.Checked then

begin

pr:=true;

str:=str+'молоко, ';

end;

if ChBVegetables.Checked then

begin

pr:=true;

str:=str+'овощи, ';

end;

Delete(str,length(str)-1,2);

str:=str+'.';

if not(pr) then str:='Продукты не выбраны.';

MemResult.Lines.Add(str);

end;

Рис. 15.3. Вид формы примера 15.3

Список действий (tActionList)

Компонент TActionList позволяет централизировать реакцию программы на действия пользователя (события), выполняемые с разными компонентами. Во время разработки программист определяет действия в редакторе списка действий (рис. 15.4). Затем эти действия подключаются к клиентским элементам управления посредством свойства Action этих элементов. Клиентский элемент управления генерирует действие в ответ на событие, например нажатие кнопки мыши. Клиентами списка действий обычно служат пункты меню или кнопки.

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

Список действий размещается на форме с помощью кнопки на стандартной панели инструментов. Для открытия редактора списка действий нужно дважды нажать мышью на этом компоненте. В редакторе можно добавлять, удалять и переставлять действия.

Свойства каждого действия устанавливаются в инспекторе объектов. Свойство Name идентифицирует действие. Другие свойства соответствуют свойствам клиентских элементов управления и обычно имеют те же имена. Компонент TActionList видим только во время разработки, а во время выполнения программы на форме он не появляется.

Пример 15.4. При нажатии левой и правой кнопки формы увеличивают показания счетчика и информация о его текущем состоянии выводится в многострочный редактор. Экранная форма программы показана на рис. 15.5. Обработка событий, происходящих при нажатии левой и правой кнопок, одинакова и имеет вид

var k:integer=0;

procedure TFrmAction.actClickedBtnExecute(Sender: TObject);

begin

inc(k);

MemOut.Lines.Add('Вы щелкнули на кнопке всего '+inttostr(k)+' раз.');

end;

Рис. 15.5. Экранная форма примера 15.4

Главное меню (tMainMenu)

Компонент TMainMenu создает в среде Delphi главное меню формы. Элемент управления состоит из строки меню и ассоциированных с его пунктами раскрывающих меню, которые содержат дополнительные пункты TMenuItem.

Главное меню размещается на форме с помощью кнопки на стандартной панели инструментов. Для создания и изменения меню в процессе разработки приложения предназначен Конструктор меню (Menu Designer), который вызывается контекстным меню компонента TMainMenu или двойным нажатием мыши на этом компоненте. При работе с конструктором используются команды его контекстного меню (рис. 15.6). С их помощью можно добавить (Insert) и удалить (Delete) пункт меню, создать подменю (Create SubMenu), выбрать меню (Select Menu), сохранить его как шаблон (Save As Template), вставить меню из шаблона (Insert From Template), удалить шаблоны (Delete Templates), вставить меню из файла ресурса (Insert From Resource).

Рис. 15.6. Конструктор меню

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]