1 / 17

Delphi programozás alapjai

Delphi programozás alapjai. Nagyváradi Anett anettn@morpheus.pte.hu http://morpheus.pte.hu/~anettn PTE PMMK MIT. 6. ELŐADÁS. Grafika, nyomtatás Delphiben. Grafikai elemek. Tervezési időben létrehozható elemek: TBitBtn (gomb) TSpeedButton (eszköztárgomb) TShape (alakzat) TImage (kép)

Download Presentation

Delphi programozás alapjai

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Delphi programozás alapjai Nagyváradi Anett anettn@morpheus.pte.hu http://morpheus.pte.hu/~anettn PTE PMMK MIT

  2. 6. ELŐADÁS Grafika, nyomtatás Delphiben

  3. Grafikai elemek Tervezési időben létrehozható elemek: • TBitBtn (gomb) • TSpeedButton (eszköztárgomb) • TShape (alakzat) • TImage (kép) Futási időben létrehozható elemek: • TCanvas (vászon)

  4. Tervezési időben TBitBtn (Additional) • nyomógomb, kattintással indított tevékenység elvégzésére • Jellemzői: • Caption - gombfelirat • Cancel - ha igaz, akkor a tevékenység az esc hatására is meghívódik • Default - ha igaz, akkor a tevékenység az enter hatására is meghívódik

  5. Tervezési időben TSpeedButton (Additional) • Eszköztár gombok megjelenítésére • Általában panelen helyezkednek el • Főleg grafikát, szöveget tartalmaznak • Állapotai: „felengedett”, „beragadt” • Példányai csoportosíthatóak (kölcsönös kizárás) • Jellemzői: • Caption – gombfelirat • Glyph – megjelenített kép, képek (max 4 kép) • NumGpyphs – hány képből áll a beszúrt Glyph (ennyi részre osztja) • GroupIndex – csoportosításhoz, azonos GroupIndex • Down – ha true, gomb benyomott állapotban • AllowAllUp – egy csoportbeli gombok lehetnek-e mind felengedve

  6. Tervezési időben TShape • Ellipszis, kör, téglalap, négyzet megjelenítésére • Jellemzői: • Shape – alakzat formája (stEllipse, stCircle, …) • Pen – a rajzoló toll tulajdonságait tartalmazza • Brush – kitöltés tulajdonságai

  7. Tervezési időben TImage • BMP, WMF, ICO grafikák megjelenítésére • Jellemzői: • Picture – megjelenített grafika adatai (LoadFromFile, SaveToFile metódusokkal betölthető, menthető) • Stretch – ha igaz, akkor felveszi a komponens méretét (torzítás), ha hamis, akkor a bal felső sarokhoz igazodva jelenik meg a kép eredeti méretben Pl.: Image1.Picture.LoadFromFile (‘kepnev.bmp’);

  8. Futási időben • Delphiben azoknak a komponenseknek a felületére rajzolhatunk, melyek rendelkeznek canvas jellemzővel • canvas =„rajzvászon” objektum, mely tartalmazza a rajzoláshoz szükséges tulajdonságokat, metódusokat • Csak futási időben elérhető jellemző – a rajzolást kódból kell megvalósítani

  9. Futási időben – Canvas TCanvas • Komponensek rajzvásznának osztálya • Rajzolás metódusokkal történik • Jellemzők: • Pen – rajzoló tolla adatai • Color (cled,clWhite,… vagy 4 byteon: $00BlueGreenRed) • Style (psSolid, psDot, psDash,…) • Width –toll vastagság pixelben • Mode – rajzmód (pmCopy (háttér felülírása), pmXOR, …) • Brush – kitöltési adatok • Color – ecset színe • Style – ecset stílusa (bsSolid, bsHorizontal, …) • Bitmap – idomok kitöltése bitmintával

  10. Futási időben – Canvas 2 • További jellemzők: • Font – betűk jellemzője a vászonon • Name – betűtípus neve (Arial, Thaoma, …) • Size – betűméret • Color – szín (clBlack, clRed, …) • Style – stílus (fsBold, fsItalic, fsUnderline, …) • ClipRect – rajzvászon határai (Left, Top, Right, Bottom) Pl.: bal felső sarok:(Canvas.ClipRect.Left, Canvas.ClipRect.Top)

  11. Futási időben – Canvas 3 • Metódusai: • MoveTo(x,y:integer) – kurzor pozícionálása • LineTo(x,y:integer) – vonal húzása (x,y) pontba • Polyline (Pontok: Array of TPoint) – nyitott sokszög rajzolása a ponttömb pontjainak összekötésével • Fillrect(ARect:TRect) – téglalap(parm.) kitöltése • Rectangle(x1,y1,x2,y2:integer) – téglalap rajzolása • Ellipse(x1,y1,x2,y2:integer)– ellipszis rajzolása • Polygon(Pontok: Array of TPoint) – zárt sokszög • TextOut (x,y:integer,Text:String)- szöveg kiiratása adott pozícióból • Draw(x,y:integer,graphic:TGraphic) – garfika megjelenítése

  12. Példa onPaint eseményre: procedure TForm1.FormPaint(Sender: TObject); begin with Form1.Canvas do begin MoveTo(10,10); LineTo(100,50); TextOut(150,150,’Helló!’); end; end;

  13. Példa TBitmap osztály egy példányával: procedure TForm1.BitBtn1Click(Sender: TObject); var Bitmap: TBitmap; begin Bitmap := TBitmap.Create; Bitmap.LoadFromFile('cim3h.bmp'); Form1.Canvas.Brush.Bitmap := Bitmap; Form1.Canvas.FillRect(Rect(0,0,300,300)); Bitmap.Free; end;

  14. Nyomtatás • a Printer objektum segítségével • TPrinter osztály – tartalmazza a nyomtatáshoz szükséges információkat • Rajzvászna segítségével nyomtathatunk a kiválasztott nyomtatóra • Jellemzői: • Canvas • Printing – nyomtatás folyamatban van-e • PageNuber – nyomtatás alat álló oldalszám • PageHeigh – nyomtató lap méretei pixelben • Copies - példányszám

  15. Nyomtatás 2 • Metódusai: • BeginDoc – nyomtatás kezdéselor kell meghívni • EndDoc – nyomtatóra való kiküldés után hívjuk meg • Abort – hatásásra törlődik a nyomtattandó dokumentum • NewPage – lapdobás

  16. Nyomtatás 3 Nyomtatás folyamata: Printer.Canvas metódusaival történik 1. nyomtató beállítások (PrintDialog, PrinterSetupDialog) 2. nyomtatás kezdése : Printer.BeginDoc 3. Írás, rajzolás a Canvasra: Printer.Canvas.TextOut(….. 4. nyomtatás befejezése : Printer.EndDoc

  17. Példa procedure TForm1.BitBtn2Click(Sender: TObject); begin If PrintDialog1.Execute then with Printer do begin BeginDoc; Canvas.Draw(Canvas.Cliprect.Left,Canvas.Cliprect.Top, .Picture.Graphic); EndDoc; end; end;

More Related