Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laby (1).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
5.58 Mб
Скачать

Зертханалық жұмыс №28

Тақырыбы: Image, ImageList компонеттері.

Мақсаты:Графикалық ақпараттарды өңдеу әдістерін Delphi ортасында бағдарламалау дағдыларын қалыптастыру

Қажетті құралдар: 1. ДК /Pentium 3,4 Windows /

2. Borland Delphi 7.0

Тапсырмалар

Салынған допты жылжыту бағдарламасы.

Жұмысты орындалу реті

  1. Borland Delphi 7.0 бағдарламалау тілін іске қосыңыз

  2. Жаңа жоба ашыңыз.

  3. Формаға қажетті Button1компонентін орналастырыңыз.

  4. Бағдарлама кодын келтірейік.

Procedure TForm1.ButtonClick(Sender:TObject);

Label 10;

Bc=clred;

Bx:=Form1.ClientWidth div 2;

By:=Form1.ClientHeight – br;

10;

If bx>Form1.ClientWidth – br then exit;

With Canvas do begin

Pen.Color:=Form1.Color;

Brush.Color:=Form1.Color;

Ellipse (bx-br, by-br, bx+br, by+br);

End;

Bx:=bx+1

With Canvas do begin

Pen.Color:=bc;

Brush.Color:=bc;

Elilipse (bx-br, by-br, bx+br, by+br);

End;

Goto 10;

End;

End.

Ескерту. Есепті If шартты опреаторы қолданылған және сурет салуға қажетті Canves объектісінің қасиеттері пайданылған. Есепті орындауға жібергеннен кейін Button пернесін шертсек, салынған доп тұрған орнынан қажетті бағытқа жылжиді.

  1. Бағдарлама кодының дұрыстығына көз жеткізіп, F9 тетігін басу арқылы бағдарламаны іске қосыңыз.

  2. Құрылған бағдарламаны сақтап, оқытушыға істелген жұмыс бойынша есеп беріңіз

ЖАТТЫҒУЛАР

  1. Экранға бетіне іші боялған шар салыңдар.

  2. Ellipse әдісін пайдаланып аққала суретін салыңдар.

  3. Іші боялған күннің суретін салыңдар.

  4. Формаға орнатылған Image1 компоненті терезесіне теңіз және арал кескінін салып,

  5. keme.bmp файылы түрінде сақталған кемені солдан оңға қарай жылжыту бағдарламасын құрыңыз.

Бақылау сұрақтары

  1. Қалам сызатын сызықтың түрін қай обьектінің қасиеттері анықтайды?

  2. Қалам сызатын сызықтың түсін қай қасиет береді?

  3. Суретті толық бояу үшін қай тұрақты пайдыланылады?

  4. Polyline әдісімен қандай фигура салуға болады?

  5. Ішкі аймақтады толтыруға қай қасиет қолданылады?

Есеп беруге нұсқау

Есеп беру келесілерді қамтуы керек:

  1. Жұмыстың тақырыбы мен мақсаты;

  2. Тапсырмалар мен жаттығулардың орындалуы;

  3. Дайындалған бағдарлама;

  4. Жұмыс бойынша қысқаша қорытынды

Әдебиеттер

  1. А. Я. Архангельский. Delphi 7.

  2. М.М. Ерекешова, Т.А.Әмірғалиева Delphi ортасында программалау негіздері

  3. Ю.А.Шпак Delphi 7 на примерах

Зертханалық жұмыс № 29

Тақырыбы: Delphi–дің мультимедиялық мүмкіндігі.

Мақсаты: Delphi–дің мультимедиялық мүмкіндігін үйрету

Теориялық мәліметтер

Компьютер жадысында сақталған суреттерді таңдайтын бағдарламаны жасаймыз.

Компонент

Қасиеті

Мәні

1

Form1

Caption

Просмотр иллюстраций

2

Label1

Caption

Каталог

3

Edit1

Text

c:\windows\

4

GroupBox1

Caption

Формат

5

RadioButton1

Caption Checked

bmp

True

6

RadioButton2

Caption

Jpg

7

Image1

Name Picture Stretch

(Пусто)нету True

8

Button1

Caption

Дальше

Программа коды:

unit shpic_;

interface

procedure Button1Click(Sender: TObject);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure FormCreate(Sender: TObject);

procedure RadioButton1Click(Sender: TObject);

procedure RadioButton2Click(Sender: TObject);

procedure FirstPicture;

procedure NextPicture;

procedure ScaleImage;

var

Form1: TForm1;

iw,ih: integer;

uses

jpeg;

var

aSearchRec : TSearchRec;

aPath: String[128];

aFile: String[128];

aMask: String[5];

n: integer = 0;

procedure TForm1.FormCreate(Sender: TObject);

begin

Image1.AutoSize := False;

Image1.Stretch := True;

iw := Image1.Width;

ih := image1.Height;

Button1.Enabled := False;

FirstPicture; end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if Key = #13 then

if DirectoryExists(Edit1.Text)

then FirstPicture

else ShowMessage('Каталог '+

Edit1.Text +' указан неверно.');

end;

procedure TForm1.FirstPicture;

var

r : integer;

begin

aPath := Edit1.Text;

if aPath[Length(aPath)] <> '\'

then aPath := aPath + '\';

if RadioButton1.Checked

then aMask := '*.bmp'

else aMask := '*.jpg';

r := FindFirst(aPath + aMask, faAnyFile, aSearchRec);

if r = 0 then

begin

aFile := aPath + aSearchRec.Name;

Image1.Picture.LoadFromFile(aFile);

ScaleImage;

r := FindNext(aSearchRec);

if r = 0 then

Button1.Enabled := True;

end;

end;

Procedure TForm1.NextPicture();

var

r : integer;

begin

aFile := aPath + aSearchRec.Name;

Image1.Picture.LoadFromFile(aFile);

ScaleImage;

r := FindNext(aSearchRec);

if r <> 0

then

Button1.Enabled := False;

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

NextPicture;

end;

Procedure Tform1.ScaleImage;

var

pw, ph : integer;

scaleX, scaleY : real;

scale : real;

begin

pw := Image1.Picture.Width;

ph := Image1.Picture.Height;

if pw > iw

then scaleX := iw/pw

else scaleX := 1;

if ph > ih

then scaleY := ih/ph

else scaleY := 1;

if scaleX < scaleY

then scale := scaleX

else scale := scaleY;

Image1.Height := Round(Image1.Picture.Height*scale);

Image1.Width := Round(Image1.Picture.Width*scale);

end;

procedure TForm1.RadioButton1Click(Sender: TObject);

begin

FirstPicture;

end;

procedure TForm1.RadioButton2Click(Sender: TObject);

begin

FirstPicture;

end; end.

Есеп – 2 «Айдың жерді айнылуы»

Компонент

Қасиеті

Мәні

1

Timer1

Interval

55

2

Label1

Caption

Вращение Луны вокруг Земли

3

Shape1

Brush.Color

Shape

Left

Top

Height

Widht

clBlue

stCircle

240

104

121

121

4

Shape2

Brush.Color Shape

Left

Top

Height

Widht

clYellow

stCircle

400

152

41

41

Фрагмент кода программы:

procedure TForm1.Timer1Timer(Sender: TObject);

begin

x:=x+0.1 ;

shape2.Left:=256+trunc(150*cos(x));

shape2.Top:=150-trunc(150*sin(x));

end;

Тапсырмалар

1 Формада ек бірдей сурет орналасқан және «Өлшемін қысқарту» нүктесі. Нүктеге басқан сайын бірінші сурет жәй кішіріледі, ал екінші кішіріле отыра қиылады және осыларды қалпына келтіретін екінші батырманы қосыңыз.

2 Формада горизатальды сызықтармен сызылған жасыл түсті дөңгелек орналасқан.Уақыт белгісі бойынша ол төртбұрышқа айналып, қызыл түске ие болады..

3 Формада тікбұрыш және көлбеу сызық орналасқан. Батырманы басқан кезде сызық тікбұрыш жаққа қарай қозғалады. Сызық тікбұрышқа тиген жағдайда жоғалып, тіктөртбұрыш эллипсқа айналады.

4 Формаға кемпірқосақ үлгісінде 7 дөңгелек орналастырып, әр қайсысына өз түсін(қасиетінің мәні BrushСо1ог) және толтыру стилін(қасиетінің мәні BrushStyle). анықтаймыз. Форманы немесе орналасқан батырма арқылы басқан сайын дөңгелектер әр түрлі түске енетіндей қыламыз.

5 Графикалық редакторда алманың бұтағын жасаңдар. Бұтақта алманы Shape элементі арқылы толтырыңдар. Алмаға басқан сайын оның өлшемі ұлғаятындай қылыңдар.

6 Ұшып келе жатқан объекті жасаңдар және оны форма бойынша қозғалатын етіңдер, ал екі басқанда орнына қайтатын болсын ( Left қасиетін қолдаңындар).

Бақылау сұрақтары:

1 Анимация және дыбыс үшін қандай компоненттер пайдаланылады?

2 SpinEdit компонент не үшін пайдаланылады?

3 Сурет, радиобатырмалар қою үшін қандай компоненттер пайдаланылады?

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