- •Лабораторна робота № 14-15
- •Частина і
- •Частина іі
- •Лабораторна робота № 16-17
- •Частина і.
- •Частина іі.
- •Частина і Завдання
- •Лабораторна робота № 20
- •Лабораторна робота № 22-23
- •Лабораторна робота № 24
- •Лабораторна робота № 25 - 26
- •Частина і Завдання
- •Частина іі Завдання
- •Лабораторна робота № 27
- •Лабораторна робота № 28
- •Лабораторна робота № 29
- •Лабораторна робота № 30
- •Лабораторна робота № 31
- •Лабораторна робота № 32
Лабораторна робота № 30
Тема роботи: Створення додатку з використанням декількох форм в проекті. Малювання геометричних фігур за допомогою компоненту ТShape. Використовування компоненту TColorGrid.
Мета роботи: Вивчення прийомів роботи з декількома формами в проекті, з компонентами ТShape, TColorGrid, із смугами прокрутки TScrollBar.
Постановка задачі. Програма повинна демонструвати зміну виду геометричних фігур а також їх кольору і розміру.
Для виконання даної лабораторної роботи я розробив інтерфейс вид якого показаний на малюнку:
Та ввів наступний код програми:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Show;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Form3.Show;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Close;
end;
end.
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm2 = class(TForm)
Shape1: TShape;
ScrollBar1: TScrollBar;
ScrollBar2: TScrollBar;
ColorDialog1: TColorDialog;
ComboBox1: TComboBox;
ShapeColor: TButton;
FormColor: TButton;
procedure ComboBox1Click(Sender: TObject);
procedure ScrollBar2Change(Sender: TObject);
procedure ScrollBar1Change(Sender: TObject);
procedure ShapeColorClick(Sender: TObject);
procedure FormColorClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.ComboBox1Click(Sender: TObject);
begin
if (ComboBox1.ItemIndex=0) then
Shape1.Shape:=stCircle;
if (ComboBox1.ItemIndex=1) then
Shape1.Shape:=stEllipse;
if (ComboBox1.ItemIndex=2) then
Shape1.Shape:=stRectangle;
if (ComboBox1.ItemIndex=3) then
Shape1.Shape:=stRoundRect;
if (ComboBox1.ItemIndex=4) then
Shape1.Shape:=stRoundSquare;
if (ComboBox1.ItemIndex=5) then
Shape1.Shape:=stSquare;
end;
procedure TForm2.ScrollBar2Change(Sender: TObject);
begin
Shape1.Height:=ScrollBar2.Position*2
end;
procedure TForm2.ScrollBar1Change(Sender: TObject);
begin
Shape1.Width:=ScrollBar1.Position*3;
end;
procedure TForm2.ShapeColorClick(Sender: TObject);
begin
if ColorDialog1.Execute then
Shape1.Brush.Color:=ColorDialog1.Color;
end;
procedure TForm2.FormColorClick(Sender: TObject);
begin
if ColorDialog1.Execute then
Form2.Color:=ColorDialog1.Color;
end;
end.
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ColorGrd, ExtCtrls, StdCtrls;
type
TForm3 = class(TForm)
RadioGroup1: TRadioGroup;
Shape1: TShape;
ColorGrid1: TColorGrid;
procedure RadioGroup1Click(Sender: TObject);
procedure ColorGrid1Change(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
{$R *.dfm}
procedure TForm3.RadioGroup1Click(Sender: TObject);
begin
if (RadioGroup1.ItemIndex=0) then
Shape1.Shape:=stCircle;
if (RadioGroup1.ItemIndex=1) then
Shape1.Shape:=stEllipse;
if (RadioGroup1.ItemIndex=2) then
Shape1.Shape:=stRectangle;
if (RadioGroup1.ItemIndex=3) then
Shape1.Shape:=stRoundRect;
if (RadioGroup1.ItemIndex=4) then
Shape1.Shape:=stRoundSquare;
if (RadioGroup1.ItemIndex=5) then
Shape1.Shape:=stSquare;
end;
procedure TForm3.ColorGrid1Change(Sender: TObject);
begin
Shape1.Brush.Color:=ColorGrid1.ForeGroundColor;
end;
end.
Висновок: Навчився прийомам роботи з декількома формами в проекті, з компонентами ТShape, TColorGrid, із смугами прокрутки TScrollBar.