Компоненты TAnimate, TProgressBar, TUpDown, TShape, TTimer.

Компонент TProgressBar предназначен для отображения хода выполнения длительного по времени процесса. Свойства Max и Min определяют максимальное и минимальное значение диапазона изменения свойства Position. Position содержит текущее значение отображаемой величины.

Компонент TUpDownпредназначен для регулирования числовой величины. Обычно компонент TUpDown связан с другим компонентом класса TEdit, который отображает регулируемую величину и при необходимости, может редактировать ее. Свойство Associate определяет связанный компонент.

Компонент TAnimate представляет собой проигрыватель видеоклипов формата AVI.Свойство FileName связывает компонент с AVI-файлом. Свойство Active разрешает/запрещает демонстрацию клипа.

Компонент TShape рисует одну из простейших геометрических фигур. Свойство Shape определяет вид геометрической фигуры.

Компонент TTimer служит для отсчета интервалов реального времени. Его свойство Interval определяет интервал времени в миллисекундах, который должен пройти от включения таймера до наступления события OnTimer. Таймер включается при установке значения Trueв его свойство Enabled. Один раз включенный таймер все время будет возбуждать события OnTimer, пока его свойство Enabled не примет значения False.

1. Поместите на третью страницу блокнота компоненты TAnimate, TProgressBar, TupDown(страница Win32), TShape(страница Additional), TTimer (страница System), TEdit.

2. Найдите в каталоге Delhi6 любой файл с расширением AVIи скопируйте его в свой каталог Lab7.Установите имя этого файла в свойство FileName компонента Animate1.(C:\Program Files\Borland\Delphi7\CollStuf)

3.Установите в свойство Enabled компонента Timer1 значение False.

4. Поместите в свойство Visible компонента ProgressBar1значение False.

5. Создайте обработчик события OnTimer компонента Timer1:

Procedure TForm1.Timer1Timer(Sender: TObject);

Begin

ProgressBar1.Position:= ProgressBar1.Position + 1;

If ProgressBar1.Position >= ProgressBar1.Max then

begin

Timer1.Enabled:=False;

ProgressBar1.Hide;

Animate1.Stop;

End;End;

6. При щелчке по кнопкам компонента TUpDown возникает событие OnClick. Создадим соответствующий обработчик:

Procedure TForm1.UpDown1Click(Sender: TObject; Button: TUDBtnType);

Begin

//Значение свойства Position компонента UpDown1 отражается в Edit1.

Edit1.Text:=IntToStr(UpDown1.Position);

Case UpDown1.Position mod 5 of

//В зависимости от значения свойства Position компонента UpDown1

// изменяется вид фигуры в компоненте Shape1.

0: Shape1.Shape:= stRectangle;

1: Shape1.Shape:= stSquare;

2: Shape1.Shape:= stRoundRect;

3: Shape1.Shape:= stRoundSquare;

4: Shape1.Shape:= stEllipse;

5: Shape1.Shape:= stCircle;

end; end;

7. Таймер включается при нажатии на кнопку №3 панели инструментов:

Procedure TForm1.ToolButton3Click(Sender: TObject);

Begin

PageControl1.ActivePageIndex:=2;

ProgressBar1.Position:=0;

Animate1.Active:=True;

ProgressBar1.Show;

Timer1.Enabled:=True;

End;

8. Запустите программу и проверьте правильность Ваших действий.

Календари.

Выбор даты – одна из часто используемых операций при вводе данных. Компонент TМonthCalendar(страница Win32) инкапсулирует календарь, панель которого содержит типовую таблицу на один месяц. При увеличении размеров в элементе управления отображается целое число календарей для месяцев, ближайших к текущему месяцу. Результат выбора даты в календаре сохраняется в свойстве Date. Компонент NDateTimerPicker совмещает календарь с однострочным текстовым редактором. На странице Samples расположен еще один календарь ТCalendar.

1. На четвертую панель блокнота поместите компоненты: TPanel (Align = alRight); TEdit(на панель); TMonthCalendar.(Align=alClient).

2. Создайте обработчик события OnClick для компонента MonthCalendar1.

Procedure TForm1.MonthCalendar1Click(Sender:TObject);

Begin

Edit2.Text:= DateToStr(MonthCalendar1.Date);

End;

Задания:

Варианты Исходные данные
1) На главную форму поместите свой рисунок, сделанный с помощью компонента TPaintBox. 2) На стандартной форме установите календарь. Выбранная в календаре дата должна отображаться в однострочном редакторе.
1) Снабдите главную форму видеоклипом. 2) В лабораторной работе №2 осуществите возможность ввода с помощью компонента TUpDown.
1) Снабдите форму Password видеоклипом. 2) На стандартной форме установите календарь. Выбранная в календаре дата должна отображаться на панели статуса.
1) На панели Password поместите TShape. Вид геометрической фигуры должен изменяться во времени. 2) В лабораторной работе №2 осуществите возможность ввода с помощью компонента TUpDown.
1) Снабдите лабораторную работу №2 видеоклипом. 2) В лабораторной работе №3 осуществите возможность ввода с помощью компонента TUpDown.

 

 

ЛАБОРАТОРНАЯ РАБОТА № 8.

ПРОГРАММИРОВАНИЕ ЦИКЛОВ.

Цель работы. Создать форму для решения задачи табулирования функции. Создать главное меню (объект типа MainMenu),содержащее команды: выйти из программы, табулировать функцию, очистить поля вывода результатов, а также контекстное меню (PopupMenu)с командой для очистки поля вывода. Результаты табулирования вывести в многострочное поле редактирования (объект типа Memo).Предусмотреть возможность вывода результатов на экран, в файл, в массив. Направление вывода задать с помощью трех флажков (объектов типа CheckBox),расположенных на панели группы объектов (типа GroupBox) (см. рис.1).

Теоретические сведения

Объект Memoприменяют для создания многострочного редактора текста. Кроме обычных свойств, поле редактирования Memoобладает свойствами:

 

Свойство Описание свойства Примеры значений
HideSelection   Сохранение выделения фрагмента текста в момент потери фокуса True (выделение не сохраняется). False (сохраняется)
Lines   Ввод начального текста в поле редактирования Комплексное свойство (задается в диалоговом окне)
MaxLength   Максимально возможное количество введенных символов Например. 50 - пятьдесят символов, 0 - без ограничений
ScrollBars   Наличие полос прокрутки   ssNone (отсутствуют), ssHorizontal (горизонтальные), ssBoth (обе)

Объект CheckBoxиспользуют для создания независимого двух- или трехпозиционного флажка: включен/выключен( /серый). Для этого объекта определены два новых свойства:

Свойство Описание свойства Примеры значений
AllowGrayed   Наличие третьей позиции True (трехпозиционный флажок), False (двухпозиционный флажок)
State   Состояние флажка cdGrayed (серый), cd Unchecked (отключен), cdCheckecl (включен)

 

Панель группы объектов GroupBoxпредназначена для размещения на ней группы из нескольких объектов. Панель группы используют для улучшения дизайна окна программы. Свойства этого объекта аналогичны описанным выше.

С помощью объекта MainMenuсоздают главное меню программы. Вот некоторые свойства главного меню:

Свойство Описание свойства Примеры значений
Items Команды меню Комплексное свойство (задается в диалоговом окне)
Tag   Вспомогательная переменная, используется в тексте программы 0; 8(целое число)  

 

С помощью объекта PopupMenuсоздают контекстное меню некоторого компонента. Для «связывания» контекстного меню с конкретным объектом необходимо свойству PopupMenuэтогообъекта присвоить значение имени (Name) соответствующего контекстного меню. Рассмотрим некоторые свойства контекстного меню:

Свойство Описание свойства Примеры значений
Alignment   Выравнивание меню относительно точки щелчка по правой клавише мыши paCenter (по центру), paLeft (слева), paRight (справа)  
AutoPopup   Автоматический вызов контекстного меню   Тrue (вызовется при щелчке по правой клавише), False (вызовется с помощью метода Popup)

 

Конкретная команда меню (главного или контекстного) может иметь такие свойства:

Свойство Описание свойства Примеры значений
Break   Разбивка меню в горизонтальном направлении mbNone (без разбивки), mbBarBreak (разбивка с вертикальной черточкой), mbBreak (разбивка без вертикальной черточки)
Shortcut   Комбинация «горячих» клавиш для вызова команды меню Ctrl+A, F8, Ctrl +F10, Shift + F3, Shift +Ctrl+F11, Ctrl+Del  

Ход работы