Практическая работа № 11

 

Тема Проектирование многооконных приложений

Цель работы: Получить навыки добавления новых форм к проекту.

Пояснения к работе

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

  • создание новой формы в действующем проекте

File / New/ Form

  • сохранение формы, как файла модуля *. pas
  • подключение нового файла к проекту

Project / Add to Project…, открыть

  • создание ссылки на новый модуль, с той формы, которая будет его использовать

File / Use Unit,

в открывшемся диалоговом окне выбрать нужный модуль и нажать Ок.

Методы, используемы при работе с формой

имя_формы. Show – отображение на экране окна формы, до этого невидимого;

имя_формы. Hide – скрыть форму, вернуться на предыдущую;

имя_формы. Update принудительная прорисовка формы;

имя_формы. Free      удаление из памяти формы.

 

Компонент StringGrid

Компонент StringGrid расположен на вкладке Additional и представляет собой таблицу, ячейки которой содержат строки символов. Свойства компонента приведены в таблице:

ColCount Количество столбцов таблицы
RowCount Количество строк таблицы
DefaultColWidth Ширина столбцов
DefaultRowHeight Высота строк
FixedCols, FixedRows Количество зафиксированных слева столбцов, сверху строк
Cells Обращение к ячейке таблицы
Options.goEditing Признак допустимости редактирования содержимого ячеек

 

Постановка задачи

Разработать приложение «Тригонометрические функции». Приложение должно работать следующим образом:

  • после загрузки на экран выводится окно-заставка, которое отображается 5 сек;
  • через 5 секунд заставка пропадает, на экран выводится основное окно;
  • в основном окне отображается таблица со значениями тригонометрических функций с заданным шагом.

Порядок выполнения

 

1. Загрузить Delphi, сохранить проект.

2. Изменить свойства главной формы в соответствии с таблицей:

BorderIcons biMaximize=False
BorderStyle bsSingle
Position poScreenCenter

 

3. Добавить на форму компонент StringGrid (Additional)и изменить свойства в соответствии с таблицей:

 

Align alClient
ColCount 5
RowCount 2
DefaultColWidth 120
DefaultRowHeight 18
ScrollBars ssVertical
Options.goRangeSelect False

 

4. Для события OnCreate ввести код:

Var

t:longint; i,n:integer; step,x,sx,cx: double;

Begin

step:=0.01;

n:=round(90/step)+1;

With stringgrid1 do

Begin

 cells[0,0]:='x';         cells[1,0]:='sin(x)';

 cells[2,0]:='cos(x)';    cells[3,0]:='tg(x)';

 cells[4,0]:='ctg(x)';    colwidths[0]:=colwidths[0] div 2;

 rowcount:=n+1;

 For i:=1 to n do

 Begin

 x:=(i-1)*step;

 sx:=sin(x*pi/180);    cx:=cos(x*pi/180);

 cells[0,i]:=floattostr(x); cells[1,i]:=floattostr(sx);

 cells[2,i]:=floattostr(cx);

 if cx <> 0 then cells[3,i]:=floattostr(sx/cx)

else cells[3,i]:= не существует;

 if sx<>0 then cells[4,i]:=floattostr(cx/sx)

else cells[4,i]:= 'не существует';

end; end; end;

 

5. Проверить работу приложения.

6. Добавить новую форму (заставка), для этого:

· выбрать в меню File / New/ Form;

· сохранить новую форму с именем Unit2.pas;

· подключить новый файл к проекту, выбрав в меню  

Project / Add to Project…, открыть Unit2.pas;

· создать ссылку на новый модуль, с той формы, которая будет его использовать:

o выбрать в меню File / Use Unit,

o в открывшемся диалоговом окне выбрать модуль Unit2 и нажать Ок.

7. Изменить свойства Form2  в соответствии с таблицей:

 

BorderIcons biSystemMenu=False biMinimize=False biMaximize=False
BorderStyle bsNone
Position poScreenCenter
FormStyle fsStayOnTop

 

8. На форму Form2 добавить метку, ввести для нее заголовок ТРИГОНОМЕТРИЧЕСКИЕ ФУНКЦИИ


9. Загрузить в редактор файл проект, для этого выбрать в меню Project/ View Source.

10. Откорректировать файл проекта следующим образом:

program Project1;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1},

Unit2 in 'Unit2.pas' {Form2};

{$R *.res}

Begin

Application.Initialize;

form2:=tform2.create(application); form2.Show;

form2.Update; form2.Label1.Update;

Application.CreateForm(TForm1, Form1);

form2.Hide;  form2.Free;

Application.Run;

end.

11. Для того, чтобы заставка задерживалась на экране 5 секунд в начало процедуры Form1Create добавить:

t:=gettickcount div 1000;

while (gettickcount div 1000)<t+5 do

 

12. Проверить работу приложения

 




ПРАКТИЧЕСКАЯ РАБОТА № 12

 

Тема Анимация

Цель работы: Получить навыки использования анимационных компонентов.

Пояснения к работе

Компонент Animate расположен на вкладке Win32 и позволяет воспроизвести только простую, не сопровождаемую звуком анимацию, кадры которой находятся в AVI-файле. Свойства компонента приведены в таблице:

FileName Имя AVI-файла
StartFrame Номер кадра, с которого начинается отображение анимации
StopFrame Номер кадра, на котором заканчивается отображение анимации
Activate Признак активации процесса отображения
Color Цвет фона, на котором воспроизводится анимация
Transparent Режим использования «прозрачного» цвета при отображении анимации
Repetitions Количество повторов отображения

 

Постановка задачи

Разработать приложение позволяющее выбирать и воспроизводить AVI-файлы в двух режимах: непрерывном и покадровом.

 

Порядок выполнения

 

1. Загрузить Delphi, сохранить проект.

2. Расположить на форме компонент Animate (Win32).

3. Для свойства FileName выбрать имя Avi-файла.

4. В процедуру TForm1.FormCreate ввести код:

animate1.Play(0,animate1.FrameCount,1);

5. Проверить работу приложения.

6. Самостоятельно изменить программу для того, чтобы количество повторов было 3. Проверить.

7. Привести форму в соответствие с образцом, для этого добавить компоненты и изменить им свойство Caption:

· Label и Edit;

· GroupBox, RadioButton

· OpenDialogs;

· командные кнопки.

8. Объявить глобальную переменную


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: