1
Instrukcja 1a
Cel ćwiczenia: Napisanie aplikacji umożliwiającej wyświetlanie grafiki przy
użyciu klasy TCanvas.
Rys.1 Widok formularza z umieszczonymi komponentami
Część I : Przygotowanie aplikacji
1. Uruchomić Delphi.
2. Na formatce umieścić komponent Image z palety komponentów Additional.
Pozostawić domyślną nazwę Image1.
3. Dla komponentu Image1 ustawić następujące własności (w Object Inspector):
• Width : 400
• Height : 400
4. Umieścić na formatce komponent Button i ustawić własność Caption na Rysuj.
Własność name pozostawić domyślną – Button1.
5. Wygenerować zdarzenie OnClick w zakładce Events – Object Inspector.
2
Rys. 2 Widok inspektora obiektów z zakładką Events
6. W zdarzeniu OnClick komponentu Button1 umieścić przykładowy kod rysujący:
with Image1.Canvas do begin
//kwadrat wypełniony kratą
Brush.Color:=clRed;
Brush.Style:=bsDiagCross;
Rectangle(10,10,200,200);
//elipsa
Brush.Color:=clBlue;
Brush.Style:=bsHorizontal;
Ellipse(50,300,350,350);
//przykładowy tekst
Font.Name:='Courier';
Font.Color:=clBlack;
Font.Size:=14;
Font.Style:=[fsBold,fsUnderLine];
TextOut(200,250,'Przykładowy tekst');
end;
7. Umieścić na formatce komponent Button i ustawić własność Caption na Czysc.
Własność name pozostawić domyślną – Button2.
8. Wygenerować zdarzenie OnClick dla komponentu Button2 i umieścić następujący
kod:
with Image1.Canvas do begin
Brush.Color:=clWhite;
Brush.Style:=bsSolid;
FillRect(Rect(0,0,Image1.Width,Image1.Height));
end;
3
Część II : Funkcja zoom
9. Umieścić dodatkowy komponent Image na formatce i ustawić następujące własności:
• Height : 200
• Width : 200
Własność name pozostawić domyślną – Image2.
10. Wygenerować zdarzenie OnMouseMove dla komponentu Image1 i wstawić do niego
następujący kod:
Image2.Canvas.CopyRect(Rect(0,0,200,200),Image1.Canvas,Rect(x-20,
y-20,x+20,y+20));
Część III : Funkcja zapisywania obrazu do pliku
11. Z palety Dialogs wybrać i umieścić na formatce komponent SavePictureDialog.
12. Umieścić na formatce kolejny przycisk Button i ustawić własność Caption na Zapisz.
13. W zdarzeniu OnClick dla przycisku Zapisz wstawić następujący kod:
SavePictureDialog1.DefaultExt:='bmp';
if SavePictureDialog1.Execute then begin
Image1.Picture.SaveToFile(SavePictureDialog1.FileName);
end;
14. Skompilować i uruchomić program.
4
Rys.3 Uruchomiony program