1 / 37

Delphi programozás SRTNB020 2. előadás – a fejlesztőkörnyezet

Delphi programozás. Delphi programozás SRTNB020 2. előadás – a fejlesztőkörnyezet. Nagyváradi Anett. Delphi programozás. Tematika. Pascal alapok - tömbkezelés, függvények, eljárások, fájlkezelés Objektum orientált programozás Delphi környezet – formok, unitok, komponensek

darrius
Download Presentation

Delphi programozás SRTNB020 2. előadás – a fejlesztőkörnyezet

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 Delphi programozásSRTNB0202. előadás – a fejlesztőkörnyezet Nagyváradi Anett

  2. Delphi programozás Tematika • Pascal alapok - tömbkezelés, függvények, eljárások, fájlkezelés • Objektum orientált programozás • Delphi környezet – formok, unitok, komponensek • Alkalmazás fejlesztése – tulajdonságok, események • Adatbáziskezelés – SQL, adathozzáférési komponensek, adat-érzékeny vezérlők • Internet-, webes-alkalmazások • 2D-, 3D-grafika

  3. Delphi programozás Történelem 1968-70 Pascal nyelv és fordító 1983 Turbo Pascal 1.0 … 1991 Turbo Pascal 6.0 1995 Delphi 1.0 … 1998 Delphi 4.0 … 2001 Delphi 6.0 2002 Delphi 7.0, Delphi .NET 2003 Delphi 8.0 2004 Delphi 2005 2005 Delphi 2006 2006 Turbo termékcsalád 2008 Delphi 2009

  4. Delphi programozás Használt verzió 2006 Turbo termékcsalád Turbo Delphi 2006 Explorer (full, english) http://cc.codegear.com/free/turbodelphi

  5. Delphi programozás Borland Delphi • Objektum orientált nyelvre épül: Object Pascal • IDE: Integrated Development Environment Integrált Fejlesztői Környezet • Eseményvezérelt programozás

  6. Delphi programozás OOP jellemzői • Egységbe zárás az adatstruktúra és az őt kezelő függvény egy egységet képez: objektum (osztály) • Öröklés meglévő osztályokból levezetett újabb osztályok öröklik a definiálásukhoz használt alaposztályok már létező adatstruktúráit és függvényeit • Többrétűség adott tevékenység (metódus) azonosítója közös lehet egy adott osztályhierarchián belül, ugyanakkor a hierarchia minden egyes osztályában a tevékenységet végrehajtó függvény megvalósítása az adott osztályra nézve specifikus

  7. Delphi programozás OOP - fogalmak Osztály – felhasználó által megadott adattípus Objektum –osztály példánya Mezők – objektum részét alkotó változók Metódus – függvények, eljárások, melyek valamely osztály vagy ősosztály objektumaira vonatkoznak Tulajdonság – mint egy mező, hatása metódus Öröklődés – egy osztály lehet egy másik osztály leszármazottja – örökli annak mezőit, metódusait, tulajdonságait

  8. Delphi programozás Egy Delphi program szerkezete Állomány neve Interfész szakasz (típusdeklarációkat tartalmaz) Leírja, hogy az alkalmazás többi része mit lát a unitban (változók, konstansok, hívható eljárások definíciói) Ez a rész nem futtatható kódot tartalmaz. Implementációs szakasz A kódot itt írjuk és futtatjuk. (az itt definiált eljárások, függvények csak itt használhatók) Erőforrás fordítási direktíva Állomány vége unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} end.

  9. Delphi programozás Osztályok szintaxisa TMyClass = class{osztálydeklaráció} End; TMyClass = class (TObject){alosztály} End; Alapértelmezetten minden osztály őse a TObject osztály. A TObject osztály rendelkezik egy ClassName osztálymetódus névvel, tehát: ShowMessage(TMyClass.ClassName); megadja az osztály nevét egy ablaküzenetben

  10. Delphi programozás Példa 3 lépcsőben (3/1) Állapot leírása:osztály tartalmazza a példányok ‘tervrajzát’ (tulajdonságok) pl.: TKutya osztály tulajdonságai: TKutya = class Szín: TColor; Faj: String; Nem: String; Súly: Double; end;

  11. Delphi programozás Példa - folytatás Szín: TColor; Itt a Szín tulajdonság bármely szín lehet, a TColor egy előre definiált típus (pl.: kék kutya – ami nem szerencsés) Megoldás: új (felsorolásos) típus Type TKutyaSzin = (ksBArna, ksFekete, ksFehér); Majd a Szín attribútum újradefiniálása: Szín = TKutyaSzin; TKutya = class Szín: TKutyaSzin; Faj: String; Nem: String; Súly: Double; end;

  12. Delphi programozás Példa - folytatás (3/2) Képességek:osztályok képességeit a metódusok adják meg – mire képes az adott osztály Metódusok: osztályok tagjaiként deklarált eljárások, függvények Pl.: TKutya = class Szín: TKutyaSzin; Faj: String; Nem: String; Súly: Double; Procedure Ugat; Procedure Fut; end;

  13. Delphi programozás Példa - folytatás Az így megadott eljárásokat az implemen-tációs szakaszban (az osztály nevével ellátva) definiáljuk: Implementation Procedure TKutya.Ugat; Begin //kód End;

  14. Delphi programozás Példa - folytatás (3/3) Objektumpéldány létrehozása:a definiált osztály egy példányát létrehozva használhatjuk annak tulajdonságait változónév:=osztálynév.create Pl.: var Dog: TKutya; begin Dog:= TKutya.Create; //memória foglalás Dog.Szín:= ksFehér; … Dog.Free; //memória felszabadítás end;

  15. Delphi programozás Self kulcsszó Metódus: eljárások, függvények; rendelkeznek egy paraméterrel, mely az aktuális objektumra mutat A metóduson belül ere az objektumra a Self kulcsszóval hivatkozhatunk. pl.: futási időben létrehozott komponens esetén a Create-nek meg kell adni a komponens tulajdonosát/szülőjét

  16. Delphi programozás Példa - self ProcedureTForm1.FormMouseDown (Sender:Object; Button: TMouseButton; Shift: TShiftState; X,Y:Integer); //ez az esemény paraméterként megkapja akattintás pozícióját is ellentétben az onclick-kel Var Gomb:TButton; Begin Gomb:=TButton.Create(Self); Gomb.Parent := Self; Gomb.Left := X; Gomb.Top :=Y; Gomb.Width :=Gomb.Width + 50; Gomb.Caption := Format(‘Button at %d %d’,[X,Y]); End; //’beinkludálni’ StdCtrls (unitba!)

  17. Delphi programozás Delphi környezet Indítóképernyő: Menu – components Object Inspector – properties, events Object Tree View Form Unit

  18. Delphi programozás Menü - komponensek - Szokásos menüpontok (file, edit, stb.) - Gyorsbillentyűk - Programfutáshoz szükséges funkciógombok - Komponenspaletta (standard, additional, win32, datacontrols, stb.)

  19. Delphi programozás Object inspector „Objektumvizsgáló” Tervezési módban – adatbeviteli ablak objektumok alapértelmezett értékei részére 1. Properties (tulajdonságok) tervezésnél módosítható adatok 2. Events (események) üzenetekre reagáló szubrutinok

  20. Delphi programozás Object Structura/ Tree View „Objektumok fanézete” Objektumok közötti hierarchia alapján navigálhatunk Az objektumokat kapcsolati rendszerben mutatja

  21. Delphi programozás Ablak és kódszerkesztő Form: (ablak) „külcsíny” ez a felhasználói felület a kapocs a külvilág és a program között Unit: (kódszerkesztő) „belbecs” itt található a tényleges forráskód

  22. Delphi programozás Munkakörnyezet konfigurálása Tools > Options> Editor Options

  23. Delphi programozás Project beállítások Project > Options - aktív form beállítás - alkalmazás tulajdonságai - verzió információ

  24. Delphi programozás Delphi alkalmazások *.res ikonállomány (bináris) *.pas forráskód állomány (pascal) *.dfm form és adatmodul állományok *.dpr projectállomány (pascal) *.dof project, options beállítások - aktuális beállítások *.cfg alkalmazás fordítását érintő konfigurációs állomány ~ backup fájlok –biztonsági másolat

  25. Delphi programozás Komponensek - Standard Main Menu menüszerkesztés- duplaklikkel menüszerkesztő Popup Menu legördülő menü Label címke, felirat Edit szövegdoboz Memo szövegmegjelenítésre Button gomb CheckBox jelölőnégyzet RadioButton választógomb (csoportosítás) ListBox lista ComboBox listáról elem kiválasztása ScrollBar gördítősáv GroupBox összetartozó komponensek csoportosítására RadioGroup választógomb csoportosítására Panel panelterület ActionList műveletlista

  26. Delphi programozás Komponensek - Additional BitBtn gomb(ikon rendelhető) SpeedButton gombterület(eszköztár) MaskEdit formátumos bekérőmező StringGrid szövegtáblázat DrawGrid táblázat Images képek Shape rajz Bevel terület ScrollBox gördíthető terület CheckListBox jelölőnégyzetes listaablak Splitter felosztás StaticText keretezett szövegsor ControlBar jelölősor Chart grafika

  27. Delphi programozás Komponensek – Win32 TabControl fül komponens (lapozáshoz) PageControl füles lapok ImageList képsorozat RichEdit szövegszerkesztő TrackBar csúszka ProgressBar folyamatjelző UpDown léptető (nyílgombokra kattintva – tovább előre) HotKey vezérlőgomb Animate animáció – néma videoklipp DateTimePicker dátum idő komponens MonthCalendar naptár TreeView fa (adatokat rajzos fa szerkezetben jeleníti meg) ListView adatokat oszlopba rendezve jeleníti meg HeaderControl mozgatható fejléc StatusBar állapotsor (a munkaterület aljára) ToolBar eszközsor CoolBar görgethető eszközsor PageScroller lapozható eszközpaletta

  28. Delphi programozás Komponensek - System Timer stopper időtartam mérésére PaintBox rajzterület MediaPlayer multimédia (video) OleContainer ügyfélterület létrehozása DdeClientConv ügyfél-kiszolgáló kapcsolat felépítésére DdeClientItem ügyféladat (elküldésére a kiszolgálónak) DdeServerConv ügyfélkommunikáció DdeServerItem kiszolgálóadat

  29. Delphi programozás Komponensek – DataAccess DataSource adatforrás (összefűző komponens) ClientDataSet egyéni többfelhasználós adatbázis DataSetProvider adatbáziskérő (szervertről) XMLTransform XMLTransformProvider XMLTransformClient

  30. Delphi programozás Komponensek – DataControls DBGrid adatbázis tábla DBNavigator navigátorgombok DBText szövegsor adat DBEdit adatbekérő DBMemo szövegsorok adat DBImages kép adat DBListBox lista adat DBComboBox bekérő lista adat DBCheckBox jelölőnégyzet adat DBRadioGroup választógomb adat DBLookUpListBox táblaoszlop DBLookUpComboBox táblaoszlop szerkesztés DBRichEdit formázott szöveg DBCtrGrid táblakészítő DBChart grafika adat

  31. Delphi programozás Komponensek – BDE Table bázistábla Query lekérdezés (SQL) StoreProc műveletek DataBase adatbázis Session adatbázis csoport BatchMove táblamásoló UpdateSQL frissítő NestedTable visszaíró

  32. Delphi programozás Események - Events duplaklikk : ObjectInspector>Events>… OnActivate aktiválás hatására OnClick ráklikkelés hatására OnCreate létrehozás hatására OnDbClick duplaklikk hatására OnDestroy megszűntetés hatására OnMouseDown egéglenyomás hatására OnMouseMove egér áthaladás hatására OnKeyPress billentyűzet lenyomására OnKeyUp billentyűzet felengedésére

  33. Delphi programozás Metódusok Application.Terminate; - az alkalmazás leállítása Close; - az aktuális ablak bezárása Hide; - az ablak elrejtése Show; - ablak előhozása ShowModal; - ablak előhozása Create; - objektum létrehozása

  34. Delphi programozás Még két apróság View>Toolbars >Customize Show tooltips beállítása a könnyebb tanulás érdekében. Delphi súgó használata! (kulcsszón:F1)

  35. Delphi programozás Feladatok Ismerkedés a kezelőfelülettel, komponensekkel. Készítsen formot komponensekkel – változtassa azok tulajdonságait – form neve, fejléce, mérete, a rajta lévő objektumok tulajdonságai (ObjectInspector>Properties). Vizsgálja meg az ObjectTreeView segítségével az osztályhierarchiát az adott alkalmazáson. Mentse el az alkalmazást – porjektként – vizsgálja az elmentett állományokat.

  36. Delphi programozás Feladatok Az elkészítet alkalmazás objektumainak eseményeit vizsgálja. Nézze át a 1delphi_tesztsor mappában található példaprogramot (az ott használt komponenseket, eseményeket, függvényeket, stb.) Készítsen alkalmazást, mely nyomógomb segítségével valamilyen eseményt vált ki (pl. egy szöveg, gombfelirat, panelszín megváltozik az onclick esemény hatására). Vizsgálja meg a MessageDlg függvényt a Delphi helpben, alkalmazza egy saját példán – használja a súgót!

More Related