Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

1. Windows bevezetés 2. Delphi alkalmazások felépítése 3. Delphi fejlesztőkörnyezet 4. Standard komponensek Negyedik Generációs Nyelvek ( Delphi )

Hasonló előadás


Az előadások a következő témára: "1. Windows bevezetés 2. Delphi alkalmazások felépítése 3. Delphi fejlesztőkörnyezet 4. Standard komponensek Negyedik Generációs Nyelvek ( Delphi )"— Előadás másolata:

1 1. Windows bevezetés 2. Delphi alkalmazások felépítése 3. Delphi fejlesztőkörnyezet 4. Standard komponensek Negyedik Generációs Nyelvek ( Delphi )

2 1. WINDOWS BEVEZETÉS

3 Delphi Delphi I / 2 Bevezetés Lehetővé teszi az egymással kommunikáló programok párhuzamos futtatását és a programok szabványos - ablakokra alapozott- grafikai megjelenítését. Alkalmazások: •DOS alapúak •DOS alapúak - DOS-t és BIOS-t felhasználók - Direkt hardverkezelők •Windows alapúak •Windows alapúak Az alkalmazás egy méretezhető, mozgatható ablakban fut. •Multitasking •Multitasking 1 program futtatása több példány- ban, ill. több program párhuzamos futtatása WINDOWS

4 Delphi Delphi I / 3 Bevezetés Windows rendszer =  dinamikusan szerkeszthető könyvtárak Megkötés: Egy Windows program minden része Windows alapelven kell működjön. Objektum orientált programozás Minden ablak egy objektum: •Adatai •Adatai: címe, menüje, színe, kurzor formája, ikonja,... •Viselkedése •Viselkedése: reakciója a különböző külső és belső eseményekre

5 Delphi Delphi I / 4 Bevezetés  Esemény  Esemény Egy külső történés ( egy billentyű leütése, az egérgomb lenyomása) Az eseményeket a Windows üzenetekké alakítja át.  Üzenet  Üzenet Egy rekord, mely tartalmaz egy azonosítót, és további adatokat. Windows eseménykezelés, üzenetvezérlés Egér bal gomb lenyomása WM_LBUTTONDOWN Azonosító = 201 Adatok: X, Y a többi egérgomb és a CTRL, SHIFT bill. állapota

6 Delphi Delphi I / 5 • Az üzeneteket a Windows rendszer szétszórja megfelelő szabályok szerint. Üzenetek feldolgozása, kezelése Alkalmazás Főprogram 1. Ablak függvény 2. Ablak függvény Windows Windows üzenetsor Alkalmazás üzenetsor A A A A Kiírás A A A A A A Az 'A' billentyű leütésének feldolgozása 

7 Delphi Delphi I / 6  az ablakot érintő üzenetek, mint pl. az ablak létrehozása, bezárása Pl. Exit az alkalmazás ablakában Nem sorolt üzenetek Alkalmazás Főprogram Főablak függvénye Windows Windows üzenetsor Alkalmazás üzenetsor WM_DESTROY WM_QUIT Alkalmazás befejezése

8 Delphi Delphi I / 7 Tehát: •Esemény •Esemény  üzenet •Üzenet •Üzenet  rendszerszintű üzenetsor  alkalmazás üzenetsor (belső üzenetek is) •Az alkalmazás sorban kiolvassa a saját üzeneteit ("üzenetkezelő ciklus"), majd utasítja a Windows-t, hogy a megfelelő ablakfüggvényt hívja meg •Az ablakfüggvény feldolgozza az üzenetet (egy többágú szelekcióban). Üzenetek feldolgozása, kezelése

9 Delphi Delphi I / 8 •Végül, a Windows átadja a vezérlést a főprogramnak. Megkezdődhet a soron következő üzenet feldolgozása. Több párhuzamosan futó alkalmazás esetén, a Windows létrehoz mindegyikük számára egy-egy üzenetsort. Üzenetek feldolgozása, kezelése

10 Delphi Delphi I / 9 Összefoglalás Minden Windows-os alkalmazásban van: •Egy "üzenetkezelő ciklus" •Ahány ablak, annyi ablakfüggvény •Egyéb függvények és eljárások Üzenetek feldolgozása, kezelése

11 2 DELPHI ALKALMAZÁSOK

12 Delphi Delphi I / 11 •Főprogram, projektállomány (*.DPR) •Képernyőtervek (*.DFM) és az azok viselkedését leíró egységek (*.PAS) •Egyéb egységek (esetleg), melyek könyvtárakként működnek •Külső erőforrások (*.BMP,*.ICO,*.CUR, *.HLP) Minden Delphi alkalmazást külön könyvtárban tároljunk! A Delphi alkalmazás felépítése

13 Delphi Delphi I / 12 Delphi projektállomány *.DPR Delphi alkalmazás *.EXE Unit (form) *.PAS Form szöveges leírása *.DFM Lefordít ottUnit *.DCU Unit*.PAS *.DCU Er ő forrá s- állomán y *.RES Dinamikusan szerkeszthet ő könyvtárak *.DLL

14 Delphi Delphi I / 13 Futáskor: Szerkesztő- doboz Form (Űrlap) Nyomógombok

15 Delphi Delphi I / 14 Eljárások procedure {Osztálynév.}Eljárásnév(paraméterek); direktívák; Lokális adatok, metódusok; begin utasítások; end;

16 Delphi Delphi I / 15 Függvények  A függvények abban különböznek az eljárásoktól, hogy hívásuk után visszatérnek egy előre megadott típusú értékkel Function {Osztálynév.}Függvénynév(paraméterek) : visszatérési érték típusa; direktívák; Lokális adatok, metódusok; begin utasítások; Függvénynév:=visszatérési érték; vagy Result:= visszatérési érték; end; Megj.: a Pascaltól eltérően használhatjuk a függvénynév helyett a Result kulcsszót

17 Delphi Delphi I / 16 Type TOsztály = Class ( TŐsOsztály) Mezőlista ; Metóduslista ; Jellemzőlista ; End; Az Object Pascal osztálymodell 1 osztály= 1 fájl A Delphiben 1 fájlban lehet több osztály is

18 Delphi Delphi I / 17 • Előfordulásai dinamikusan jönnek létre • Egyszeres öröklődés • Minden új típusnak van őse, a TObject (A közös ős előnyét lásd később) • Mezőlista: adatmezők leírása Az Object Pascal osztálymodell

19 Delphi Delphi I / 18 Adathozzáférés korlátozása  A hozzáférésnek-amely adatokra, metódusokra vonatkozik- a Delphiben 4 szintje van •Private (privát) •Protected (védett) •Public (publikus) •Published (publikált)  Private  Private (privát) adatok és metódusok: Csak az illető osztály metódusaiból érhetők el  Protected  Protected (védett) adatok és metódusok:A kurrens osztály és a leszármazott osztályok metódusaiban láthatók  Public  Public (publikus) adatok, jellemzők és metódusok: Kivűlről(objektumból) is elérhetők  Published  Published (publikált) adatok és jellemzők:Mint a public, de tervezési időben is elérhetők(Objektum felügyelőben-Object Inspector lsd. később)

20 Delphi Delphi I / 19 Adathozzáférés korlátozása  Ezeket a kulcsszavakat az osztálydeklarációban használjuk, tetszőleges számban elhelyezhető, először az adatokat kell felsorolnunk, majd a metódusokat Type TOsztaly=Class Private Adatok; Metódusok; Protected Adatok; Metódusok; End;

21 Delphi Delphi I / 20 Egységek Egység –A főprogramhoz hozzászerkeszthető tárgykód •Fordítás után.TPU kiterjesztést kap •A tárgykód mérete < 64 Kbyte –Az egység célja: •Korábban kipróbált, bevált programrészek hozzáférhetővé tétele más programokban •Megvalósítási részletek elrejtése •A kód mérethatárának kiterjesztése –Az egységnek meghatározott feladatköre ("kohéziója") van!

22 Delphi Delphi I / 21 Egységek Az egység (Unit) felépítése Egységfej Illesztő (interface) rész Kifejtő (implementációs) rész Végrehajtó (inicializációs) rész

23 Delphi Delphi I / 22 Egységek Az egység részei: –Egységfej •Unit •Unit egységnév; –Illesztő rész •Interface –Globális deklarációk (változók, típusok, konstansok, eljárásfejek...) –Kifejtő rész •Implementation –A globális és lokális eljárások kifejtése –Végrehajtó rész Begin  Előkészítő tevékenységek End.

24 Delphi Delphi I / 23 Egységek használata Egységek Egység szerkesztése, fordítása, tárolása –Az egység forráskódját ugyanúgy szerkesztjük, mint bármely programot. –Az egységnévnek meg kell egyeznie a.PAS állomány könyvtári nevével! –Az egységet lemezre fordítjuk. A.TPU állomány a fenti könyvtárban keletkezik.

25 Delphi Delphi I / 24 Egységek Az egységet használó program fordítása –Ne feledkezzünk meg a USES egységnév utasításról! –A programot célszerű a Compile/Make (F9) menüpont szerint fordítani (ha megváltozott az egység forráskódja, akkor az a programmal együtt ismételten lefordítódik). Egységek használata (folytatás)

26 Delphi Delphi I / 25 Egységek Az egységet használó program futtatása, belövése –Ha a programot is lemezre fordítottuk (.EXE), az mindazt tartalmazza, ami a futtatáshoz kell (a.TPU állomány már nem szükséges). –Forrásnyelvi nyomkövetés (F7) az egység rutinjaiban akkor lehetséges, ha az egység forráskódja is elérhető. Egységek használata (folytatás)

27 Delphi Delphi I / 26 Új projekt létrehozásakor a keretrendszer létrehoz egy projektállományt, egy ablakot, és az ehhez tartozó egységet. program pUdvozles; uses Forms, uUdvozles in 'uUdvozles.pas' {frmUdv}; {$R *.res} begin Application.Initialize; Application.CreateForm(TfrmUdv, frmUdv); Application.Run; end. A projektállomány szerkezete A program belépési pontja a main !

28 Delphi Delphi I / 27 •A formon levő objektumok grafikus (külalaki) tulajdonságait tartalmazza binárisan •Vizuális tervezéssel jönnek létre •Megtekinthetők szöveges formában is Képernyőterv leíró állomány (*.DFM)

29 Delphi Delphi I / 28 •tartalmazza a megtervezett formosztály definícióját és a rajta levő komponensek viselkedését. •Mindegyik űrlaphoz(formhoz) tartozik egy Pas állomány A formhoz tartozó egység (*.PAS)

30 3. FEJLESZTŐKÖRNYEZET

31 Delphi Delphi I / 30 Bevezetés • Windows-os alkalmazások (16 és 32 bit) • Vizuális fejlesztői eszköz, RAD (Rapid Application Development) • 4GL (4th Generation Language) • Hátterében OO nyelv áll (Object Pascal) • Készíthetünk vele EXE-t és DLL-t • Dinamikus adatcsere lehetőségek: DDE, OLE 1.0, 2.0, OLE Automation A Delphi fejlesztő környezet jellemzői A Delphi fejlesztő környezet jellemzői :

32 Delphi Delphi I / 31 Bevezetés  Adatbázis-kezelés IDAPI (Integrated Database Application Programming Interface) •DBase, Paradox, Oracle, Ingres, Informix, Interbase,... •Helyi és távoli adatforrások •Táblák, lekérdezések, jelentések  MAPI (Multimedia Application Programming Interface)  Internet-es alkalmazások ADelphi fejlesztő környezet jellemzői: A Delphi fejlesztő környezet jellemzői:

33 Delphi Delphi I / 32 Osztályhierarchia  A Delphiben minden komponens valamelyik osztályhoz tartozik  Mivel a Delphi 7 rengeteg komponenst kínál a programozóknak, az osztálydiagram felépítése bonyolult.  A Delphi osztályok legnagyobb része komponensosztály

34 Delphi Delphi I / 33 Osztályhierarchia  Egy-egy komponensre egy-egy osztály épül fel, ezek a komponensek megtalálhatók az ún. komponenspalettán  Mint látjuk az összes osztály közös őse a TObject.  A VCL(Visual Component Library) vizuális komponenskönyvtár, a TObject osztályból nagyon sok osztályt származtat

35 Delphi Delphi I / 34 Delphi komponenstípusok: •Láthatók (Edit, Button,...) •Láthatatlanok (Timer, MainMenu,...) Használatuk: •A komponenseket összecsipegetjük a komponenspalettáról és elhelyezzük őket a formon •Eredményül, a rendszer mezőként deklarálja a megfelelő formosztályban (tartalmazási kapcsolat ) Delphi komponensek

36 Delphi Delphi I / 35 A keretrendszer form vizuális képe komponenspaletta objektum-felügyelő kódszerkesztőablak kódszerkesztő ablak

37 Delphi Delphi I / 36 • F11: megjeleníti az objektum-felügyelőt • F12: váltás a form és kódszerkesztő ablakok között • SHIFT + F12 : váltás a unitok között • F9 : fordítás, futtatás • F7, F8 : lépésenkénti végrehajtás Gyakran használt funkcióbillentyűk:

38 Delphi Delphi I / 37 Főprogram (*.DPR) Uses Unit1, Unit2, Unit3,... Begin... End. Főprogram (*.DPR) Uses Unit1, Unit2, Unit3,... Begin... End. unit Unit1; interface uses… unit Unit1; interface uses… unit Unit2; interface uses… unit Unit2; interface uses… A Delphi alkalmazás felépítése (űrlapok)

39 4. STANDARD KOMPONENSEK

40 Delphi Delphi I / 39 KomponensekTComponent Vizuális komponensek TControl Nem látható komponensek TComponent alosztályai a TControl -t kivéve Nem ablakalapú vezérlők TGraphicControl Ablakalapú vezérlők TWinControl

41 Delphi Delphi I / 40 Standard komponensek TObject TComponent TControl TLabel TWinControl TButton TEdit TMemo

42 Delphi Delphi I / 41 Standard komponensek Innen származó tulajdonságok: •Name •Name: String[63] (a komponens programbeli neve) •Owner •Owner: TComponent (tulajdonosa) TComponent: •Komponensek közös őse

43 Delphi Delphi I / 42 Standard komponensek • a látható komponensek absztrakt osztálya • Fontosabb jellemzői: •Parent •Parent: TWinControl (szülőablaka) owner •A választógombok tulajdonosa (owner) a párbeszédablak parent •A választógombok szülője (parent) a választógomb csoport TControl

44 Delphi Delphi I / 43 Standard komponensek •Align •Align: alNone, alTop, alBottom,..., alClient (igazítás a szülőablakon belül) •Caption •Caption: String •Visible •Visible: Boolean (látható-e?) •Enabled •Enabled: Boolean (fogadja-e az üzeneteket?) •Top, Left, Width, Height: •Top, Left, Width, Height: Integer •Color •Color: TColor (clRed, clSilver,...) •DragCursor •DragCursor: TCursor (crDefault, crSize,crHourGlass,...) TControl

45 Delphi Delphi I / 44 Standard komponensek •Font •Font: TFont (Color, Name, Size,...) •PopupMenu •PopupMenu: TPopupMenu (gyorsmenü, ls. később) • Fontosabb eseményei: •OnClick, OnDblClick •OnDragDrop, OnDragOver, OnEndDrag •OnMouseDown, OnMouseMove, OnMouseUp TControl

46 Delphi Delphi I / 45 Standard komponensek MainMenu Menü Label Címke Edit Szerkesztődoboz Button Gomb CheckBox Jelölőnégyzet

47 Delphi Delphi I / 46 Standard komponensek RadioButton Rádiógomb ListBox Listadoboz ComboBox Legördülő lista RadioGroup Rádiógomb csoport Panel

48 Delphi Delphi I / 47 BitButton Bitmapas gomb SpeedButton Beragadó gomb MaskEdit Maszkolható szerkesztődoboz StringGrid Rács (táblázat) Image Kép Shape Alakzat

49 Delphi Delphi I / 48 Standard komponensek • Szerepe: passzív szöveg megjelenítése az űrlapon • Fontosabb jellemzői: •Caption •Caption: String •Transparent •Transparent: Boolean TLabel

50 Delphi Delphi I / 49 Standard komponensek • Az "ablakozott" komponensek őse • Fontosabb jellemzői: •TabStop •TabStop: Boolean •TabOrder •TabOrder: • Fontosabb metódusai: •Update (frissíti, újrarajzolja) •SetFocus •SetFocus (fókuszba helyezi) TWinControl

51 Delphi Delphi I / 50 Standard komponensek • Fontosabb eseményei: •OnEnter, OnExit •OnEnter, OnExit (be- és kilépéskor) •OnKeyDown, OnKeyUp, OnKeyPress TWinControl

52 Delphi Delphi I / 51 Standard komponensek • Szerepük: adat megjelenítése és bekérése •TEdit: egy sorban •TMemo: több sorban • Fontosabb jellemzők: •Text •Text: String Lines •TMemo - nál: Lines: TStrings A megjelenített szöveg soronkénti feldolgozása •MaxLength •MaxLength: Integer •AutoSelect •AutoSelect: Boolean TEdit, TMemo

53 Delphi Delphi I / 52 Standard komponensek •SelText •SelText: String •SelStart, SelLength •PasswordChar •PasswordChar: Char • Fontosabb metódusai: •SelectAll •ClearSelection •CutToClipboard, CopyToClipboard, PasteFromClipboard TEdit, TMemo

54 Delphi Delphi I / 53 Standard komponensek • Fontosabb eseményei: •OnEnter •OnEnter : belépéskor •OnChange •OnChange : ha a Text változik •OnExit •OnExit : kilépéskor TEdit, TMemo

55 Delphi Delphi I / 54 Standard komponensek • Szerepük: kattintásra betáplált tevékenység elvégzése • Fontosabb jellemzők: •Caption •Caption: String •Cancel •Cancel: Boolean (Esc - re meghívódik) •Default •Default: Boolean (Enter- re meghívódik) •ModalResult •ModalResult: mrOk, mrCancel,... modális párbeszédablak kilépési oka TButton, TBitBtn

56 Delphi Delphi I / 55 Standard komponensek Glyph Kind •TBitBtn - nál: - Glyph: TBitmap, NumGlyphs: Kind: bkCustom, bkRetry, bkOk,... • Fontos eseményük: •OnClick TButton, TBitBtn

57 Delphi Delphi I / 56 Standard komponensek • Jelölőnégyzet Igaz/ Hamis, Igen/ Nem,... állapotok jelölésére • Fontosabb jellemzők: •Checked •Checked: Boolean •AllowGrayed •AllowGrayed: Boolean (szürkítés engedélyezése) •State •State: cbChecked, cbUnChecked, cbGrayed TCheckBox

58 Delphi Delphi I / 57 Standard komponensek • Választógomb csoport egymást kölcsönösen kizáró opciók számára • Fontos jellemzők: •Items •Items: TStrings (az opciók szövege külön sorban) •ItemIndex •ItemIndex: Integer (= 0  első opció, =1  második opció,...) • Fontos eseménye: •OnClick TRadioGroup

59 Delphi Delphi I / 58 Standard komponensek • Listadoboz; nem szerkeszthető; egy vagy több sora kiválasztható • Fontos jellemzői: •Items •Items: TString (sorai) •ItemIndex •ItemIndex: Integer (a kiválasztott sor indexe (0  első sor,...)) •MultiSelect •MultiSelect: Boolean (többszörös kiválasztás engedélyezése) •SelCount •SelCount: Integer (a kiválasztott sorok száma) TListBox

60 Delphi Delphi I / 59 Standard komponensek •Selected[i •Selected[i]: Boolean (True ha az i. indexű sor ki van választva) •Sorted •Sorted: Boolean • Fontos metódusa: •ItemAtPos •ItemAtPos : visszaadja a megadott x,y koordinátákban levő sorának indexét (egér kattintásakor használjuk) TListBox

61 Delphi Delphi I / 60 Standard komponensek • Kombinált lista; közvetlenül szerkeszthető, vagy kiválasztható egy elem a lebomló listából • Fontos jellemzői: •Text •Text: String (szövege) •Items •Items: TStrings (a lista elemei) •ItemIndex: Integer (a kiválasztott listaelem indexe) •DropDownCount •DropDownCount: Integer (hány soros legyen a lebomló lista) TComboBox

62 Delphi Delphi I / 61 Standard komponensek •Sorted •Sorted: Boolean •SelText, SetStart, SelLength •SelText, SetStart, SelLength mint a TEdit - nél. •Style •Style: csDropDown, csDropDownList, csOwnerDrawFixed,... • Fontosabb eseménye: •OnDropDown •OnDropDown (a lista lenyitásakor) TComboBox

63 Delphi Delphi I / 62 Standard komponensek • Típusai: •Főmenü •Gyorsmenü (egér jobb gombra) TMainMenu • Főmenü komponens • Vizuálisan szerkesztjük a menüszerkesztővel • Fontosabb jellemzője: •Items •Items[x: Integer]: TMenuItem Menük használata

64 Delphi Delphi I / 63 Standard komponensek • Menüpont szürkítése: •Pl. A FileMenu OnClick eseményére felülbíráljuk az almenüpontok állapotát (pl. OpenMenu. Enabled := False ) Menük használata

65 Delphi Delphi I / 64 Standard komponensek • Tartalmazza egy menüpont tulajdonságait, metódusait és eseményeit • Jellemzői: •Caption •Caption: String - Forróbillentyű: &File  File - Menüszeparátor: Caption = - •Items •Items[X: Integer]: TMenuItem (az almenüpontok) •Count •Count: Integer (almenüpontok száma) TMenuItem

66 Delphi Delphi I / 65 Standard komponensek •Checked •Checked: Boolean ("pipa") •Enabled •Enabled: Boolean (=False  szürke) •GroupIndex •GroupIndex: Integer (ld. később menük összefésülése) • Metódusai: •Add, Insert, Remove •Add, Insert, Remove (futás közbeni menüátalakítás) • Eseménye: •OnClick TMenuItem

67 Delphi Delphi I / 66 Standard komponensek • Egyéb komponensek PopupMenu tulajdonságához kötjük • Vizuális tervezéssel jön létre • Fontosabb jellemzői: •Items •Items[x: Integer] : TMenuItem •AutoPopup •AutoPopup: Boolean (ha True, akkor automatikusan az egér jobb gombjának lenyomására megjelenik) • Hasznos metódus: •Popup •Popup (megjeleníti a gyorsmenüt) TPopupMenu

68 Delphi Delphi I / 67 Standard komponensek • Hasznos eseménye: •OnPopup •OnPopup:  megjelenéskor hívódik meg  felhasználhatjuk a menüpontok engedélyezésére ill. letiltására TPopupMenu


Letölteni ppt "1. Windows bevezetés 2. Delphi alkalmazások felépítése 3. Delphi fejlesztőkörnyezet 4. Standard komponensek Negyedik Generációs Nyelvek ( Delphi )"

Hasonló előadás


Google Hirdetések