Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Остов ВТП.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2 Мб
Скачать
☆

Interval:integer

OnTimer

Листинг 40

procedure TForm1.Timer1Timer(Sender: TObject);

begin

Shape1.Left := Shape1.Left + 1;

end;

Листинг 41

procedure TForm1.FormActivate(Sender: TObject);

begin

i := 0;

end;

Листинг 42

procedure TForm1.Timer1Timer(Sender: TObject);

begin

Shape1.Left := Shape1.Left + 1;

i := i + 1;

if i >= 50 then

Timer1.enabled := false;

end;

Рис. 35

Листинг 43

procedure Form1.FormActivate(Sender: TObject);

begin

Timer1.enabled :=false;

I := 0;

end;

procedure TForm1.Timer1Timer(Sender: TObject);

begin

Shape1.Left:=Shape1.Left +1;

i := i + 1;

if i >= 50 then

Timer1.enabled := false;

end;

TCanvas

224

Height, Width

Image1.Height

ClientHeight, Clientwidth

Pen Brush

Canvas.MoveTo(x, y)

PenPos.x, PenPos.у

Canvas.Pixels[x, y] := <цвет>

<переменная> := <объект>.canvas.pixels[x, y];

Canvas.LineTo(x, y)

PolyGon(<массив точек>: TPoint))

PolyLine(<массив точек>: TPoint)

Canvas.PolyLine([Point(10, 30), Point(20, 70), …]);

Листинг 44

…

var

…

m: array[1..10] of TPoint;

…

begin

…

m[1].x := 10;

m[1].y := 30;

m[2].x := 20;

m[2].y := 70;

…

m[10].x := 160;

m[10].y := 130;

Canvas.PolyLine(m)

…

Canvas.PolyBezier(m)

Canvas.Ellipse(x1, y1, x2, y2)

Рис. 36

Canvas.Arc(x1, y1, x2, y2, x3, y3, x4, y4)

Рис. 37

Canvas.Pie(x1, y1, x2, y2, x3, y3, x4, y4).

Рис. 38

Canvas.Chord(x1,y1,x2,y2,x3,y3,x4,y4)

Рис. 39

Canvas.Rectanle(x1, y1, x2, y2)

Canvas.RoundRec(x1, y1, x2, y2, x3, y3)

Рис. 40

FillRect(<прямоугольник>:TRect)

FrameRect(<прямоугольник>: TRect)

Листинг 45

var

…

rec1, rec 2: Trect; {определение двух прямоугольников}

…

begin

rec1 := Rect(10, 10, 100, 100); {задание координат первого прямоугольника}

rec2 := Rect(110, 10, 200, 100); {задание координат второго прямоугольника}

Form1.Canvas.Brush.Color := clGreen; {задание цвета кисти}

FillRect(rec1); {создание закрашенного зеленым цветом прямоугольника без контура}

FrameRect(rec2); {создание прямоугольника c контуром зеленого цвета без закраски}

Polygon(<массив точек>:TPoint)

FloodFill(x, y, Color, FillStyle)

TextOut(X, Y: Integer; const Text: string)

Рис. 41

<объект>.Canvas.Font.Style := [fsBold, fsItalic];

TImage

Image1.Picture.SaveToFile('<путь и имя файла>.bmp');

Image1.Picture.LoadFromFile('<путь и имя файла>.bmp');

Form1.Image1.Canvas.Pen.Color := clRed;

Рис. 42

Листинг 46

procedure Form1.FormCreate(Sender:TObject);

var

nc:TColor;

begin

Image1.Canvas.Pen.Color := clRed; //задание цвета будущей линии

Image1.Canvas.Pen.Width := 3; //установка толщины будущей линии

Image1.Canvas.MoveTo(20, 20); //установка графического курсора в точку начала будущей линии

Timer1.Enabled := False; //дезактивирование таймера при запуске проекта

Timer1.Interval := 300; //установка временного интервала таймера

nc := Form1.Color; //определение цвета фона формы

Image1.Canvas.Brush.Color := nc; //задание цвета заливки

Image1.Canvas.FillRect(Rect(0, 0, Image1.Width, Image1.Height)); //заливка фона Image1 таким же цветом, что и фон формы

Image1.Canvas.LineTo(100, 100); //создание рисунка линии

end;

procedure Form1.Timer1Timer(Sender:TObject);

begin

Image1.Left := Image1.Left + 1; //сдвиг линии на один пиксель вправо

end;

procedure Form1.Button1Click(Sender:TObject);

begin

Timer1.Enabled := True; //запуск таймера

end;

procedure Form1.Button2Click(Sender:TObject);

begin

Timer1.Enabled := False; //остановка таймера

end;

224

TСolor 0  224-1

clRed, clYellow, clBlue

Form1.Color := 3127;

Листинг 47

…

var

…

nc: Tcolor;

…

begin

…

nc := 3127;

…

Form1.Color := 3127;

…

RGB (Red, Green, Blue)

28 = 256

nc := RGB(104, 67, 201);

Рис. 43

Листинг 48

unit SelectColor;