Delphi programozás alapjai

35
Delphi programozás Delphi programozás alapjai alapjai Nagyváradi Anett Nagyváradi Anett [email protected] [email protected] http://morpheus.pte.hu/~anettn http://morpheus.pte.hu/~anettn PTE PMMK MIT PTE PMMK MIT

description

Delphi programozás alapjai. Nagyváradi Anett [email protected] http://morpheus.pte.hu/~anettn PTE PMMK MIT. 2. ELŐADÁS. Borland Delphi fejlesztői környezet Bevezetés Megjegyzés: a ppt-ben található színkódok: forráskód általános szintaxisa példaprogram részlet. Történelem. - PowerPoint PPT Presentation

Transcript of Delphi programozás alapjai

Page 1: Delphi programozás alapjai

Delphi programozás Delphi programozás alapjaialapjai

Nagyváradi AnettNagyváradi [email protected]@morpheus.pte.hu

http://morpheus.pte.hu/~anettnhttp://morpheus.pte.hu/~anettn

PTE PMMK MITPTE PMMK MIT

Page 2: Delphi programozás alapjai

2. ELŐADÁS2. ELŐADÁS

Borland Delphi fejlesztői környezetBorland Delphi fejlesztői környezet- BevezetésBevezetés

Megjegyzés: Megjegyzés: a ppt-ben található színkódok:a ppt-ben található színkódok:

forráskód általános szintaxisaforráskód általános szintaxisapéldaprogram részletpéldaprogram részlet

Page 3: Delphi programozás alapjai

TörténelemTörténelem1968-70 Pascal nyelv és fordító1968-70 Pascal nyelv és fordító1983 Turbo Pascal 1.0 …1983 Turbo Pascal 1.0 …1991 Turbo Pascal 6.01991 Turbo Pascal 6.01995 Delphi 1.0 …1995 Delphi 1.0 …1998 Delphi 4.0 …1998 Delphi 4.0 …2001 Delphi 6.02001 Delphi 6.02002 Delphi 7.0, Delphi .NET2002 Delphi 7.0, Delphi .NET2003 Delphi 8.02003 Delphi 8.02004 Delphi 20052004 Delphi 20052005 Delphi 20062005 Delphi 2006

Page 4: Delphi programozás alapjai

Borland Delphi 7.0Borland Delphi 7.0

- Objektum orientált nyelvre épül: Object - Objektum orientált nyelvre épül: Object PascalPascal

- IDE: - IDE: Integrated Development Integrated Development EnvironmentEnvironment

Integrált Fejlesztői KörnyezetIntegrált Fejlesztői Környezet

- Eseményvezérelt programozás- Eseményvezérelt programozás

Page 5: Delphi programozás alapjai

OOP jellemzőiOOP jellemzőiEgységbe zárásEgységbe zárás

- az adatstruktúra és az őt kezelő függvény - az adatstruktúra és az őt kezelő függvény egy egységet képez: objektum (osztály)egy egységet képez: objektum (osztály)

ÖröklésÖröklés- meglévő osztályokból levezetett újabb - meglévő osztályokból levezetett újabb

osztályok öröklik a definiálásukhoz használt osztályok öröklik a definiálásukhoz használt alaposztályok már létező adatstruktúráit és alaposztályok már létező adatstruktúráit és függvényeitfüggvényeit

TöbbrétűségTöbbrétűség- adott tevékenység (metódus) azonosítója - adott tevékenység (metódus) azonosítója

közös lehet egy adott osztályhierarchián belül, közös lehet egy adott osztályhierarchián belül, ugyanakkor a hierarchia minden egyes ugyanakkor a hierarchia minden egyes osztályában a tevékenységet végrehajtó osztályában a tevékenységet végrehajtó függvény megvalósítása az adott osztályra nézve függvény megvalósítása az adott osztályra nézve specifikusspecifikus

Page 6: Delphi programozás alapjai

OOP - fogalmakOOP - fogalmakOsztályOsztály – felhasználó által megadott adattípus – felhasználó által megadott adattípus

ObjektumObjektum –osztály példánya –osztály példánya

MezőkMezők – objektum részét alkotó változók – objektum részét alkotó változók

MetódusMetódus – függvények, eljárások, melyek – függvények, eljárások, melyek valamely osztály vagy ősosztály objektumaira valamely osztály vagy ősosztály objektumaira vonatkoznakvonatkoznak

TulajdonságTulajdonság – mint egy mező, hatása metódus – mint egy mező, hatása metódus

ÖröklődésÖröklődés – egy osztály lehet egy másik osztály – egy osztály lehet egy másik osztály leszármazottja – örökli annak mezőit, leszármazottja – örökli annak mezőit, metódusait, tulajdonságaitmetódusait, tulajdonságait

Page 7: Delphi programozás alapjai

Állomány neveÁllomány neve

Interfész szakaszInterfész szakasz (típusdeklarációkat (típusdeklarációkat tartalmaz)tartalmaz)Leírja, hogy az alkalmazás többi része mit lát Leírja, hogy az alkalmazás többi része mit lát a unitban (változók, konstansok, hívható a unitban (változók, konstansok, hívható eljárások definíciói)eljárások definíciói)Ez a rész nem futtatható kódot tartalmaz.Ez a rész nem futtatható kódot tartalmaz.

Implementációs szakaszImplementációs szakaszA kódot itt írjuk és futtatjuk. (az itt definiált A kódot itt írjuk és futtatjuk. (az itt definiált eljárások, függvények csak itt használhatók)eljárások, függvények csak itt használhatók)

Erőforrás fordítási direktívaErőforrás fordítási direktívaÁllomány végeÁllomány vége

Egy Delphi program Egy Delphi program szerkezeteszerkezete

unit Unit1;unit Unit1;

interfaceinterface

usesuses Windows, Messages, SysUtils, Windows, Messages, SysUtils,

Variants, Classes, Graphics, Variants, Classes, Graphics, Controls, Forms, Dialogs;Controls, Forms, Dialogs;

typetype TForm1 = class(TForm)TForm1 = class(TForm) privateprivate { Private declarations }{ Private declarations } publicpublic { Public declarations }{ Public declarations } end;end;varvar Form1: TForm1;Form1: TForm1;

implementationimplementation

{$R *.dfm}{$R *.dfm}end.end.

Page 8: Delphi programozás alapjai

Osztályok szintaxisaOsztályok szintaxisaTMyClass = classTMyClass = class {osztálydeklaráció}{osztálydeklaráció}

End;End;

TMyClass = class (TObject)TMyClass = class (TObject) {alosztály}{alosztály}

End;End;

Alapértelmezetten minden osztály őse a Alapértelmezetten minden osztály őse a TObject osztály.TObject osztály.

A TObject osztály rendelkezik egy ClassName A TObject osztály rendelkezik egy ClassName osztálymetódus névvel, tehát:osztálymetódus névvel, tehát:

ShowMessage(TMyClass.ClassName);ShowMessage(TMyClass.ClassName);

megadja az osztály nevét egy megadja az osztály nevét egy ablaküzenetbenablaküzenetben

Page 9: Delphi programozás alapjai

PéldaPélda

1. 1. Állapot leírásaÁllapot leírása: osztály tartalmazza : osztály tartalmazza a példányok ‘tervrajzát’ a példányok ‘tervrajzát’ (tulajdonságok)(tulajdonságok)pl.: TKutya osztálypl.: TKutya osztálytulajdonságai: tulajdonságai:

TKutya = classTKutya = classSzín: TColor;Szín: TColor;Faj: String;Faj: String;Nem: String;Nem: String;Súly: Double;Súly: Double;

end;end;

Page 10: Delphi programozás alapjai

Példa – folyt.1Példa – folyt.1Szín: TColor;Szín: TColor;

Itt a Szín tulajdonság bármely szín lehet, a Itt a Szín tulajdonság bármely szín lehet, a TColor egy előre definiált típus (pl.: kék TColor egy előre definiált típus (pl.: kék kutya – ami nem szerencsés)kutya – ami nem szerencsés)

Megoldás: Megoldás: új (felsorolásos) típusúj (felsorolásos) típusType TKutyaSzin = (ksBArna, ksFekete, ksFehér);Type TKutyaSzin = (ksBArna, ksFekete, ksFehér);

Majd a Szín attribútum újradefiniálása: Majd a Szín attribútum újradefiniálása: Szín = TKutyaSzin;Szín = TKutyaSzin;

Page 11: Delphi programozás alapjai

Példa – folyt.2Példa – folyt.22. 2. KépességekKépességek: osztályok képességeit a : osztályok képességeit a

metódusok adják meg – mire képes az metódusok adják meg – mire képes az adott osztályadott osztályMetódusok: osztályok tagjaiként deklarált Metódusok: osztályok tagjaiként deklarált eljárások, függvényekeljárások, függvények

Pl.: Pl.: TKutya = classTKutya = classSzín: TColor;Szín: TColor;Faj: String;Faj: String;Nem: String;Nem: String;Súly: Double;Súly: Double;Procedure Ugat;Procedure Ugat;Procedure Fut;Procedure Fut;

end;end;

Page 12: Delphi programozás alapjai

Példa – folyt.3Példa – folyt.3

Az így megadott eljárásokat az Az így megadott eljárásokat az implemen-tációs szakaszban (az implemen-tációs szakaszban (az osztály nevével ellátva) definiáljuk:osztály nevével ellátva) definiáljuk:

ImplementationImplementation

Procedure TKutya.Ugat;Procedure TKutya.Ugat;

BeginBegin

//kód//kód

End;End;

Page 13: Delphi programozás alapjai

Példa – folyt.4Példa – folyt.43.3.Objektumpéldány létrehozásaObjektumpéldány létrehozása: a definiált : a definiált

osztály egy példányát létrehozva osztály egy példányát létrehozva használhatjuk annak tulajdonságait:használhatjuk annak tulajdonságait:

változónév:=osztálynév.createváltozónév:=osztálynév.create

Pl.: Pl.: var Dog: TKutya;var Dog: TKutya;beginbegin

Dog:= TKutya.Create; Dog:= TKutya.Create; //memória foglalás //memória foglalás

Dog.Szín:= ksFehér;Dog.Szín:= ksFehér;……Dog.Free;Dog.Free; //memória //memória

felszabadításfelszabadítás

end;end;

Page 14: Delphi programozás alapjai

A Self kulcsszóA Self kulcsszó

Metódus: eljárások, függvények, és Metódus: eljárások, függvények, és rendelkeznek egy paraméterrel, mely rendelkeznek egy paraméterrel, mely az aktuális objektumra mutataz aktuális objektumra mutat

A metóduson belül ere az objektumra a A metóduson belül ere az objektumra a SelfSelf kulcsszóval hivatkozhatunk. kulcsszóval hivatkozhatunk.

pl.: futási időben létrehozott pl.: futási időben létrehozott komponens esetén a komponens esetén a CreateCreate-nek meg -nek meg kell adni a komponens tulajdonosát, kell adni a komponens tulajdonosát, szülőjétszülőjét

Page 15: Delphi programozás alapjai

Példa- SelfPélda- SelfProcedureTForm1.FormMouseDown (Sender:Object; ProcedureTForm1.FormMouseDown (Sender:Object;

Button: TMouseButton; Shift: TShiftState; Button: TMouseButton; Shift: TShiftState; X,Y:Integer);X,Y:Integer);

//ez az esemény paraméterként megkapja //ez az esemény paraméterként megkapja akattintás akattintás pozícióját is ellentétben az onclick-kelpozícióját is ellentétben az onclick-kel

Var Gomb:TButton;Var Gomb:TButton;

BeginBeginGomb:=TButton.Create(Self);Gomb:=TButton.Create(Self);Gomb.Parent := Self;Gomb.Parent := Self;Gomb.Left := X;Gomb.Left := X;Gomb.Top :=Y;Gomb.Top :=Y;Gomb.Width :=Gomb.Width + 50;Gomb.Width :=Gomb.Width + 50;Gomb.Caption := Format(‘Button at %d %d’,[X,Y]);Gomb.Caption := Format(‘Button at %d %d’,[X,Y]);

End;End;

//beinkludálni StdCtrls (unitba!)//beinkludálni StdCtrls (unitba!)

Page 16: Delphi programozás alapjai

Delphi környezetDelphi környezet

IndítóképernyőIndítóképernyő::

Menu – componentsMenu – components

Object Inspector Object Inspector – – properties, eventsproperties, events

Object Tree ViewObject Tree View

FormForm

UnitUnit

Page 17: Delphi programozás alapjai

Menü - Menü - komponensekkomponensek

- Szokásos menüpontok (file, edit, stb.)- Szokásos menüpontok (file, edit, stb.)

- Gyorsbillentyűk- Gyorsbillentyűk

- Programfutáshoz szükséges funkciógombok- Programfutáshoz szükséges funkciógombok

- Komponenspaletta- Komponenspaletta(standard, additional, win32, datacontrols, stb.)(standard, additional, win32, datacontrols, stb.)

Page 18: Delphi programozás alapjai

Object InspectorObject Inspector

„„Objektumvizsgáló”Objektumvizsgáló”

Tervezési módban – adatbeviteli Tervezési módban – adatbeviteli ablak objektumok alapértelmezett ablak objektumok alapértelmezett értékei részéreértékei részére

1. 1. PropertiesProperties (tulajdonságok) (tulajdonságok)

tervezésnél módosítható adatoktervezésnél módosítható adatok

2. 2. EventsEvents (események) (események)

üzenetekre reagáló szubrutinoküzenetekre reagáló szubrutinok

Page 19: Delphi programozás alapjai

Object Tree ViewObject Tree View

„„Objektumok fanézete”Objektumok fanézete”

Objektumok közötti Objektumok közötti hierarchia alapján hierarchia alapján navigálhatunknavigálhatunk

Az objektumokat kapcsolati Az objektumokat kapcsolati rendszerben mutatjarendszerben mutatja

Page 20: Delphi programozás alapjai

Ablak és Ablak és kódszerkesztőkódszerkesztő

Form: (ablak) „külcsíny” Form: (ablak) „külcsíny”

ez a felhasználói ez a felhasználói felület a kapocs a felület a kapocs a külvilág és a program külvilág és a program közöttközött

Unit: (kódszerkesztő) Unit: (kódszerkesztő) „belbecs” „belbecs”

itt található a itt található a tényleges forráskódtényleges forráskód

Page 21: Delphi programozás alapjai

Munkakörnyezet Munkakörnyezet konfigurálásakonfigurálása

Tools > Editor Tools > Editor OptionsOptions

Page 22: Delphi programozás alapjai

Project beállításokProject beállítások

Project > OptionsProject > Options

- aktív form - aktív form beállításbeállítás

- alkalmazás - alkalmazás tulajdonságaitulajdonságai

- verzió információ- verzió információ

Page 23: Delphi programozás alapjai

Delphi alkalmazásokDelphi alkalmazások

*.res*.res ikonállomány (bináris)ikonállomány (bináris)*.pas*.pas forráskód állomány (pascal)forráskód állomány (pascal)*.dfm*.dfm form és adatmodul állományok form és adatmodul állományok*.dpr*.dpr projectállomány (pascal)projectállomány (pascal)*.dof*.dof project, options beállítások - aktuális beállításokproject, options beállítások - aktuális beállítások*.cfg*.cfg alkalmazás fordítását érintő konfigurációs alkalmazás fordítását érintő konfigurációs

állományállomány~ ~ backup fájlok –biztonsági másolatbackup fájlok –biztonsági másolat

Page 24: Delphi programozás alapjai

Komponensek - Komponensek - StandardStandardMain MenuMain Menu menüszerkesztés- duplaklikkel menüszerkesztőmenüszerkesztés- duplaklikkel menüszerkesztőPopup MenuPopup Menu legördülő menülegördülő menüLabel Label címke, feliratcímke, feliratEditEdit szövegdobozszövegdobozMemoMemo szövegmegjelenítésreszövegmegjelenítésreButtonButton gombgombCheckBoxCheckBox jelölőnégyzetjelölőnégyzetRadioButtonRadioButton választógomb (csoportosítás)választógomb (csoportosítás)ListBoxListBox listalistaComboBoxComboBox listáról elem kiválasztásalistáról elem kiválasztásaScrollBarScrollBar gördítősávgördítősávGroupBoxGroupBox összetartozó komponensek csoportosításáraösszetartozó komponensek csoportosításáraRadioGroupRadioGroup választógomb csoportosításáraválasztógomb csoportosításáraPanelPanel panelterületpanelterületActionListActionListműveletlistaműveletlista

Page 25: Delphi programozás alapjai

KomponensekKomponensek - - AdditionalAdditional

BitBtnBitBtn gomb(ikon rendelhető) gomb(ikon rendelhető)SpeedButtonSpeedButton

gombterület(eszköztár)gombterület(eszköztár)MaskEdit formátumos MaskEdit formátumos

bekérőmezőbekérőmezőStringGridStringGrid szövegtáblázatszövegtáblázatDrawGridDrawGrid táblázattáblázatImagesImages képekképekShapeShape rajzrajzBevelBevel területterületScrollBoxScrollBox gördíthető területgördíthető területCheckListBoxCheckListBox jelölőnégyzetes jelölőnégyzetes

listaablaklistaablakSplitterSplitter felosztásfelosztásStaticTextStaticText keretezett szövegsorkeretezett szövegsorControlBarControlBar jelölősorjelölősorChartChart grafikagrafika

További komponensek:További komponensek:

ApplicationEventApplicationEventValueListEditorValueListEditorLabelEditLabelEditColorBoxColorBoxActionManagerActionManagerActiopnMainMenuBarActiopnMainMenuBarActionToolBarActionToolBarCustomizeDlgCustomizeDlg

Page 26: Delphi programozás alapjai

KomponensekKomponensek – win32– win32TabControlTabControl fül komponens (lapozáshoz)fül komponens (lapozáshoz)PageControlPageControl füles lapokfüles lapokImageListImageList képsorozatképsorozatRichEditRichEdit szövegszerkesztőszövegszerkesztőTrackBarTrackBar csúszkacsúszkaProgressBarProgressBar folyamatjelzőfolyamatjelzőUpDownUpDown léptető (nyílgombokra kattintva – tovább előre)léptető (nyílgombokra kattintva – tovább előre)HotKeyHotKey vezérlőgombvezérlőgombAnimateAnimate animáció – néma videoklippanimáció – néma videoklippDateTimePickerDateTimePicker dátum idő komponensdátum idő komponensMonthCalendarMonthCalendar naptárnaptárTreeViewTreeView fa (adatokat rajzos fa szerkezetben jeleníti meg)fa (adatokat rajzos fa szerkezetben jeleníti meg)ListViewListView adatokat oszlopba rendezve jeleníti megadatokat oszlopba rendezve jeleníti megHeaderControlHeaderControl mozgatható fejlécmozgatható fejlécStatusBarStatusBar állapotsor (a munkaterület aljára)állapotsor (a munkaterület aljára)ToolBarToolBar eszközsoreszközsorCoolBarCoolBar görgethető eszközsorgörgethető eszközsorPageScrollerPageScroller lapozható eszközpalettalapozható eszközpaletta

Page 27: Delphi programozás alapjai

KomponensekKomponensek – – SystemSystem

TimerTimer stopper időtartam mérésérestopper időtartam mérésérePaintBoxPaintBox rajzterületrajzterületMediaPlayerMediaPlayer multimédia (video)multimédia (video)OleContainerOleContainer ügyfélterület létrehozásaügyfélterület létrehozásaDdeClientConvDdeClientConv ügyfél-kiszolgáló kapcsolat felépítéséreügyfél-kiszolgáló kapcsolat felépítéséreDdeClientItemDdeClientItem ügyféladat (elküldésére a kiszolgálónak)ügyféladat (elküldésére a kiszolgálónak)DdeServerConvDdeServerConv ügyfélkommunikáció ügyfélkommunikáció DdeServerItemDdeServerItem kiszolgálóadatkiszolgálóadat

Page 28: Delphi programozás alapjai

KomponensekKomponensek – – DataAccessDataAccessDataSourceDataSource adatforrás (összefűző komponens)adatforrás (összefűző komponens)

ClientDataSetClientDataSet egyéni többfelhasználós adatbázisegyéni többfelhasználós adatbázis

DataSetProviderDataSetProvider adatbáziskérő (szervertről)adatbáziskérő (szervertről)

XMLTransformXMLTransform

XMLTransformProviderXMLTransformProvider

XMLTransformClientXMLTransformClient

Page 29: Delphi programozás alapjai

KomponensekKomponensek – – DataControlsDataControlsDBGridDBGrid adatbázis táblaadatbázis táblaDBNavigatorDBNavigator navigátorgomboknavigátorgombokDBTextDBText szövegsor adatszövegsor adatDBEditDBEdit adatbekérőadatbekérőDBMemoDBMemo szövegsorok adat szövegsorok adat DBImagesDBImages kép adatkép adatDBListBoxDBListBox lista adatlista adatDBComboBoxDBComboBox bekérő lista adatbekérő lista adatDBCheckBoxDBCheckBox jelölőnégyzet adatjelölőnégyzet adatDBRadioGroupDBRadioGroup választógomb adatválasztógomb adatDBLookUpListBoxDBLookUpListBox táblaoszloptáblaoszlopDBLookUpComboBoxDBLookUpComboBox táblaoszlop szerkesztéstáblaoszlop szerkesztésDBRichEditDBRichEdit formázott szövegformázott szövegDBCtrGridDBCtrGrid táblakészítőtáblakészítőDBChartDBChart grafika adatgrafika adat

Page 30: Delphi programozás alapjai

KomponensekKomponensek – BDE– BDETableTable bázistáblabázistáblaQueryQuery lekérdezés (SQL)lekérdezés (SQL)StoreProcStoreProc műveletekműveletekDataBaseDataBase adatbázisadatbázisSessionSession adatbázis csoportadatbázis csoportBatchMoveBatchMove táblamásolótáblamásolóUpdateSQLUpdateSQL frissítőfrissítőNestedTableNestedTable visszaíróvisszaíró

Page 31: Delphi programozás alapjai

Események (events)Események (events)duplaklikk : duplaklikk : ObjectInspector>Events>…ObjectInspector>Events>…

OnActivateOnActivate aktiválás hatásáraaktiválás hatásáraOnClickOnClick ráklikkelés hatásáraráklikkelés hatásáraOnCreateOnCreate létrehozás hatásáralétrehozás hatásáraOnDbClickOnDbClick duplaklikk hatásáraduplaklikk hatásáraOnDestroyOnDestroy megszűntetés hatásáramegszűntetés hatásáraOnMouseDownOnMouseDown egéglenyomás hatásáraegéglenyomás hatásáraOnMouseMoveOnMouseMove egér áthaladás hatásáraegér áthaladás hatásáraOnKeyPressOnKeyPress billentyűzet lenyomásárabillentyűzet lenyomásáraOnKeyUpOnKeyUp billentyűzet felengedésérebillentyűzet felengedésére

Page 32: Delphi programozás alapjai

MetódusokMetódusok

Application.Terminate; - az alkalmazás Application.Terminate; - az alkalmazás leállításaleállítása

Close; - az aktuális ablak bezárásaClose; - az aktuális ablak bezárása

Show; - ablak előhozásaShow; - ablak előhozása

ShowModal; - ablak előhozásaShowModal; - ablak előhozása

Create; - objektum létrehozásaCreate; - objektum létrehozása

Page 33: Delphi programozás alapjai

Még két apróságMég két apróság

View>Toolbars View>Toolbars >Customize>Customize

Show tooltipsShow tooltips beállítása beállítása a könnyebb tanulás a könnyebb tanulás érdekében.érdekében.

Delphi súgó használata! Delphi súgó használata!

(kulcsszón:F1)(kulcsszón:F1)

Page 34: Delphi programozás alapjai

FeladatokFeladatok

Ismerkedés a kezelőfelülettel, Ismerkedés a kezelőfelülettel, komponensekkel.komponensekkel.

Készítsen formot komponensekkel – Készítsen formot komponensekkel – változtassa azok tulajdonságait – form neve, változtassa azok tulajdonságait – form neve, fejléce, mérete, a rajta lévő objektumok fejléce, mérete, a rajta lévő objektumok tulajdonságai tulajdonságai

((ObjectInspector>PropertiesObjectInspector>Properties).).

Vizsgálja meg az Vizsgálja meg az ObjectTreeViewObjectTreeView segítségével segítségével az osztályhierarchiát az adott alkalmazáson.az osztályhierarchiát az adott alkalmazáson.

Mentse el az alkalmazást – porjektként – Mentse el az alkalmazást – porjektként – vizsgálja az elmentett állományokat.vizsgálja az elmentett állományokat.

Page 35: Delphi programozás alapjai

FeladatokFeladatokAz elkészítet alkalmazás objektumainak Az elkészítet alkalmazás objektumainak

eseményeit vizsgálja.eseményeit vizsgálja.Nézze át a Nézze át a 1delphi_tesztsor1delphi_tesztsor mappában mappában

található példaprogramot (az ott használt található példaprogramot (az ott használt komponenseket, eseményeket, komponenseket, eseményeket, függvényeket, stb.)függvényeket, stb.)

Készítsen alkalmazást, mely nyomógomb Készítsen alkalmazást, mely nyomógomb segítségével valamilyen eseményt vált ki segítségével valamilyen eseményt vált ki (pl. egy szöveg, gombfelirat, panelszín (pl. egy szöveg, gombfelirat, panelszín megváltozik az onclick esemény hatására).megváltozik az onclick esemény hatására).

Vizsgálja meg a Vizsgálja meg a MessageDlgMessageDlg függvényt a függvényt a Delphi helpben, alkalmazza egy saját Delphi helpben, alkalmazza egy saját példán.példán.