Információ szerver a forrás programozók a világ minden tájáról

Születés, élet és halál a formában.

(Fordítás a cikk a honlapon az azonos nevű delphi.about.com)

A Windows, a fő felhasználói felület elem - alkotják. A Delphi, minden projekt legalább egy ablakot - az alkalmazás főablakát. Az összes ablak Delphi alapján TForm objektumot. Ebben a cikkben fogjuk megvitatni a fontosabb eseményeket részt vesz a „életformák”.

alak
Forms saját tulajdonságokkal, események és módszereket, amelyek segítségével megjelenését és viselkedését a formában. A forma a megszokott Delphi komponens, de a többivel, akkor nem jelenik meg a komponens bárban. Általában az űrlap létrehozásakor, amikor létrehoz egy új projekt (File | New Application). Az újonnan létrehozott forma a fő formája az alkalmazás.

További formák jönnek létre a projekt révén a File | New Form. Vannak még más módon lehet kialakítani formában, de azt nem tekintjük őket.

Mint minden más komponens (tárgy) forma saját módszereket és reagál az eseményekre. Nézzük meg néhány ilyen eseményeket.

OnCreate
OnCreate esemény bekövetkezik létrehozásakor TForm és csak egyszer. Amikor létrehoz egy űrlapot (a Cator Visible tulajdonság értéke True), esemény, mely a következő sorrendben: OnCreate, OnShow, OnActivate, OnPaint.
A OnCreate eseménykezelő, akkor lehet, hogy bármilyen kezdeti akciók azonban semmilyen tárgyat létre a OnCreate kell semmisíteni abban az esetben OnDestroy.

OnShow
Ez az esemény, amikor a forma láthatóvá válik. OnShow úgynevezett előtt közvetlenül formájában láthatóvá válik. Ez az esemény bekövetkezik, ha meg a Visible tulajdonság True az űrlapot, vagy hívja a megjelenítése módszer vagy ShowModal.

OnActivate
Ez az esemény, amikor a forma is aktív, vagyis amikor a forma lesz a hangsúly. Ez az esemény lehet változtatni az űrlap elem, amely abból áll, hogy a fókuszt.

OnPaint, OnResize
Az ilyen eseményeket, valahányszor egy forma eredetileg létre. Ugyanakkor OnPaint nevezzük minden alkalommal, hogy valamilyen formában elem kell festeni (ez az esemény lehet használni, ha szükséges, ugyanakkor felhívni a forma valami különleges).

élet
Ha az űrlap létrehozásakor, és annak minden eleme várja az eseményeket, azok feldolgozását, az élet folytatódik, így amíg valaki rákattint az X a jobb felső sarokban a forma!

megsemmisítés
A pusztítás a forma, az események által generált, a következő sorrendben:

OnCloseQuery
Ha megpróbálja bezárni a formában a következő eljárással, vagy más rendelkezésre álló eszközzel (Alt + F4 vagy a menürendszerben), akkor esemény generálódik OnCloseQuery. Így ez az esemény lehet használni, hogy megakadályozzák a záró a penész. Általában OnCloseQuery eseményt arra használjuk, hogy kérje a felhasználó -, hogy ő biztos (talán a mellékletben voltak mentett adatok).

OnCloseQuery eseménykezelő tartalmaz egy változó CanClose, amely meghatározza, hogy a formát be lehet zárni. A kezdeti értéke a változó igaz. Azonban OnCloseQuery felvezető lehet állítani a visszatérési érték CloseQuery Hamis, hogy megszakítja a találmány szerinti eljárás végrehajtását bezárása.

OnClose
Ha OnCloseQuery visszatért CanClose = True (ami azt jelzi, hogy a nyomtatványt le kell zárni), akkor generált eseményt OnClose.
OnClose esemény ad az utolsó esélye, hogy megakadályozzák a záró a penész. Processzor OnClose Action paraméter a következő négy lehetséges értékek:
Canone. Forma nem megengedett, hogy lezárja. Mindegy, akkor False a CanClose OnCloseQuery.
caHide. Ahelyett, záró, a forma el van rejtve.
caFree. Az űrlap zárva lesz, és elfoglalta a forrásokat fog megjelenni.
caMinimize. Ahelyett, hogy záró, a formát minimalizálható. Ez az érték által meghatározott defaul MDI gyermek formákat.

Megjegyzés: Ha a felhasználó shutdaunit a Windows, akkor nevezhető OnCloseQuery helyett OnClose. Ha nem szeretné, hogy a Windows, hogy befejezze a munkát, aztán meg a kódot a eseménykezelő OnCloseQuery bár CanClose = False nem, mit tettek itt.

OnDestroy
Miután a OnClose módszer kerül feldolgozásra, és a formát zárt, akkor okozta OnDestroy esemény. A OnCreate általában hatásával ellentétes e tenni a OnCreate, azaz a megsemmisítése a létrehozott objektumok és a kibocsátás memóriát.

Estevstvenno, hogy amikor a fő formája a projekt zárva van, az alkalmazás befejeződik.