Delphi programozási jegyzetek
Körülbelül a projekt fájlt
Köztudott, hogy a Delphi teremt számos kiterjesztésű fájlokat pas, DFM, DPR, stb Jellemző, hogy a programozó érdekli kódfájlokhoz (PAS) és leírásai formák (DFM), míg a többi nem szem elől, de hiába -, hogy fontos információt hordoznak, amely lehet (és bizonyos esetekben - meg kell) változás.
Kezdjük a projekt fájl (DPR). Sőt, ez tartalmazza az aktuális programot. míg a projekthez kapcsolódó formáit több fájlok és DLL rutin.
Projekt fájl struktúra, amely egyetlen alakzat, mint például látható az 1. lista.
Project (program) indul fordul a inicializálása módszer a globális Application objektum, és véget ér befejezése után az ő módszerét Run. Ez a módszer - a központi: ez megjeleníti a fő formája a kérelem és elküldi a Windows üzeneteket. A munka elvégzésének a kódsor található elérése előtt ez függ alkalmazás betöltési idő, és a képernyő, mielőtt a fő ablakban.
Inicializálása módszert szolgáltat, mint mondják, csak abban az esetben, és semmi nem alapértelmezett. Ahhoz, hogy ez a munka, akkor helyezze a mutatót a megfelelő eljárást paraméterek nélkül a globális változó InitProc. Ezt meg lehet tenni bármilyen kezdeti szakaszban az egység (a kód ilyen szakaszok aktiválódik kezdete előtt a fő program), vagy közvetlenül a szervezetben a fő projekt (lásd a 2. listát):
Természetesen ez utóbbi esetben, könnyebb lesz az első állítás a fő program kifejezetten utal az init eljárás. Általánosságban elmondható, hogy a legtöbb esetben Application.Initialize operátor lehet távolítani minden következmény nélkül a program.
Csökkentve a betöltési időt
Egy valós projekt számos formája közötti hívásokat az inicializálása és futtatása általában megtalálhatók számos kihívással CreateForm módszer. által, amelyek a projektben használt formában. Minden hívás ez a módszer növeli az indítási idejű alkalmazásokhoz. A kezdeti időben a képernyőn lesz látható, csak egy ablak a fő alkalmazási forma (létrehozta az első utalás CreateForm), valamint a többi ablak objektumok hozhatók létre a program során, mielőtt megjelenne a megfelelő ablakot.
Alapértelmezésben a kapcsoló automatikus létrehozása formák (ún opció által Project | Options környezetben Delphi) a Preference eszközök lapjára | Környezetvédelmi jelölőnégyzetet, ami Delphi hogy minden új formája a listán az Auto-űrlapok létrehozásához, és ezáltal a megfelelő operátor fellebbez CreateForm fájl projektben. Ha törli ezt a munka megkezdése előtt a projekt, vagy elhalasztja a felesleges formák a listán Elérhető formák Project ablakban | Options. jelentősen (néha - tíz alkalommal), hogy csökkentsék a letöltési időt alkalmazásokat.
A képernyő, mielőtt a fő ablakban
Az alábbi lista 3. (például venni a Delphi rendszer segítségével) létrehozott program 5 ablakokat. A forma Form5 ProgressBar1 mutató. amellyel teszi a folyamat letöltése a program, hogy pontos legyek - létrehozását az összes többi ablak.
Jelszó védelmi program
Trial verziók
A fenti módszer létrehozása próbaverziói programok csak akkor működik, amíg egy bizonyos időpontban vagy kimerülése a megadott számú fut. 5. lista mutatja a projekt fájl (Trial.dpr), amelyben a próba-változat a program indítása nem több mint 5-ször. Megjegyezni a következő futás számot a registry.
A projektről át egy másik mappába
By the way, ez a szám szemlélteti az megsérti a szabályt „egy projekt - egy mappa”: ez a projekt, annak ellenére, hogy a kijelölt szabály, sok modul tárolja almappákat, ennek eredményeként a Delphi jelzi hosszú útvonalakon való hozzáférés a vonatkozó fájlokat. Ha egy ilyen projekt van másolva egy floppy lemezre, ezeket az útvonalakat változatlan marad, és a fordító nem találja a fájlokat. Még rosszabb, ha másolja a projekt egy másik mappába ugyanazon a merevlemezen. Ebben az esetben indítsa el a baj: ha valamit változtatni az új projekt, de az alkalmazás nem válaszol, és ha meg a kontroll töréspont bármikor a modulok lenne kivitelezhetetlen - a fordító továbbra is használja az eredeti fájlok nem másolatokat.
Ha azt szeretnénk, hogy mozog a projekt egy másik helyre, miközben a teljesítmény, meg kell az első használat opció File | Save Project néven másolatát ebben a mappában a projekt fájlt, majd használja az File | Save As átvinni az összes kapcsolódó modulok a projekt: csak akkor Delphi lesz képes arra, hogy a szükséges javításokat a projekt fájlt. De ha minden a fájlokat egy mappában, akkor a uses nem határozza meg a megközelítési útvonalak, így nyugodtan másolni egyszerre az összes fájlt egy másik mappába.
.DSK a telepítő fájlt. ahol a közeg információt tárol az állam a képernyőn a kiadás időpontjában a Delphi, továbbá biztosítja a teljes elérési útvonalak fájlokat megnyitni. Ne másolja, ha át a projekt ezt a fájlt.
Változatos üzenete következtetés
Minden gazdagsága Windows vizuális jellemzői nem korlátozódnak egy sor tulajdonságok és módszerek TCanvas osztályban. Ez az osztály magában csak a legnépszerűbb technikákat dolgoznak rajz eszközökkel. Táblázat. 1 listák néhány funkciót a Windows, ami nem magukba TCanvas osztály és jelentősen változhat a szöveges kimenet (ő leginkább kimerült a szűk határait TCanvas).
Külön szerkezet TLogFont golf CreateFontIndirect funkciók jelentése a következő:
lfHeight - a magassága a font (1 pont = 1/72 inch); Ha nagyobb, mint 0 - meghatározza a magassága „jeleket-mo-ta” (a hangszórók nagybetűs karakter elemei a betűk E, Q); Ha kevesebb, mint 0 - határozza meg a magassága a „tiszta” karakter, ha értéke 0 - magassága választja a Windows;
lfWidth - átlagos karakter szélességű; ha egyenlő 0 - állítja a szélessége a Windows;
lfEscapment - szög alapvonal a szöveg tized fok képest vízszintes irányban; pozitív érték - óramutató járásával megegyező; Windows 95/98 egybeesik lfOrientation;
lfOrientation - szimbólumok hajlásszög tekintetében a kiindulási; A Windows NT True Type betűtípus eltérhet lfEscapment; ezt be kell állítania a megjelenítési módot, hogy a készülék gm_Advanced (alapértelmezés gm_Compatible);
lfWeight - font sűrűségű (fm_DontCare = 0 - sűrűsége kiválasztja a Windows; fm_Thin = 100 - nagyon vékony font; fm_ExtraLight = 200 - nagyon könnyű; fm_Light = 300 - fény; fm_Normal = 400 - normális; fm_Medium = 500 - megvastagodott; fm_SemiBold = 600 - félkövér; fm_Bold = 700 - félkövér; fm_ExtraBold = 800 - megerősített; fm_Heavy = 900 - nehéz);
lfItalic, lfUnderline, lfStrikeOut - egy nem nulla érték azt jelenti, illetve ferde, keresztbe, és aláhúzással;
lfCharSet - karakterkészlet (ANSI_CharSet = 0; default_charset = 1; Symbol_Char-Set = 2; ShiftJis_CharSet = 128; OEM_CharSet = 255);
lfOutPrecision - pontosság a font; Ajánlott Out_TT_Prec (True Type és válassza vektorbetűtípusokat, ha több fajta hasonló betűtípussal) vagy Out_TT_Only_Prec (Csak True Type);
lfClipPrecision - meghatározza a pontosság a cut-off címkék határait a rajz (Clip_Character_Precis Clip_Embedded, Clip_Mask, Clip_TT_Always, Clip_Default_Precis - ajánlott, Clip_LH_Angles Clip_Stroke_Precis ..);
lfQuality - határozza meg a minőségét vektorizálás (Default_Quality, Draft_Quality, Proof_Quality);
lfPitchAndFamily - négy LSB meghatározza a betűtípust, négy vezető - a családját;
lfFaceName - betűtípus nevét.
Ábra. A 2. ábra egy példa dőlt létrehozott CreateFontIndirect funkció (CreateFont.dpr).
Ahogy végre, ez a példa mutatja be a 6. példában.
Paraméter Format DrawText funkciót tartalmazhat egy vagy több, zászlók (táblázat. 2).
Ha a jelző be van állítva dt_CalcRect. funkció megváltoztatja a magassága és szélessége a téglalap oly módon történik, hogy a teljes szöveget. Ha látsz egy pár sort, a szélessége a kibocsátás nem változik. A függvény visszatérési értéke true magassága a kimeneti négyszög.
Paraméter beállítások ExtTextOut funkció kombinációja lehet a következő értékeket:
eto_Clipped - a szöveg lesz nyírni határokat téglalap;
eto_Gliph_Index - blokk feldolgozása nyelv driver;
eto_Opaque - háttér rajzolni újra
eto_RTLReading - kimenet olvasásához jobbról balra.
Megjeleníti a szöveget szabvány TCanvas módszerek mindig újra rajzolt háttér karakter (a háttér színe visszaadja GetBkColor funkció). Ha a karakter háttér színe eltér a háttérben a vászon, a visszavonás kíséri kellemetlen mellékhatásai. Ha a példát a 6. lista egy űrlapot, hogy elhagyja az alapszín clFaceBtn, a kimeneti ablak ábrán látható. 3.
Természetesen a segítségével SetBkColor funkció beállítható, így a színe megegyezik a színe a vásznon, de ez nem mindig lehetséges. Például, ábra. A 4. ábra a képernyőn, ami hagyományosan biztosítani sok Setup.exe telepítőt. Háttér ezen a képernyőn nem állandó, hanem fokozatosan eltolódik az intenzív kék és fekete. Egyértelmű, hogy létrehozni egy változtatható színű funkció SetBkColor lehetetlen. Sőt, a nagybetűs feliratok Setup.exe programot is hagyományosan megjelenített megvastagodott lejtős Times New Roman betűtípussal fehér betűkkel, fekete árnyék. Megvalósítása ez a hatás elég egyszerű. Tehát, ha kell, hogy kilépjen a rajz háttér, amelyben keresztül SetBkMode funkciók Átlátszó mód. és megjeleníti a feliratot kétszer először fekete, és a második - fehér, kiszorítva a második címke kissé balra és felfelé képest az első. 7. lista szemlélteti ezt (Setup.dpr):
Ábra. A 4. ábra az ablak fut a program.
Inclusion formájában könyvtárban
A következő példákban (TestDLLForm.dpr) ábra felvétele berendezések formájában DLL és használja a hívó programban (lista 8. 9. és 10.).
A modul képezi DLLForm. helyezni egy DLL, arra utal, hogy a standard Forms modul, és így kapja a globális objektumok számára Alkalmazás. aki „nem tudom” semmit globális objektum hívó. A modális hívás módban ez nem számít, mert a modális ablak blokkolja a hívó. A nem-modális módban a hívást kell szinkronizálni az intézkedés tárgyak, különben a minimalizálása a fő ablakban, például nem vezet minimalizálásával windows DLL. A szinkronizálás érjük el a kilincset Application DLL tárgy helyett egy megfelelő leíró hívó program.
Cougar Újabban a vállalat bevezette az új sorozat tápegységek hagyományos PC-k - VTX, célozza meg a felhasználók a korlátozott költségvetéssel. Ez a felülvizsgálat modell Cougar VTX600 kell tekinteni, hogy mivel annak jellemzőit az egyik legnépszerűbb a sorban a tápegységek
Az évente megrendezésre kerülő esemény kapszaicin SIGGRAPH Los Angeles, az AMD megerősítette pozícióját a PC-piac a high-end új processzorok Ryzen Threadripper és GPU «Vega»
Egy egyszerű és kényelmes építési hétköznapi felhasználók hálózati cég ZyXEL kiadta a következő változat az internetes csomópont csatlakozik a 3G / 4G hálózatok USB-modem Wi-Fi hozzáférési pont - ZyXEL Keenetic 4G III, amit úgy ez a felülvizsgálat
Ahhoz, hogy az ő és így egy nagy család router és router cég ASUS nemrég hozzáadott két nagyon érdekes modell: a zászlóshajó 4G-AC55U és könnyebb 4G-N12. Ebben a cikkben a zászlóshajó modelljét ASUS 4G-AC55U figyelembe kell venni
Fiatal, de ambiciózus cég Krez idén kiadott egy új, eredeti modell laptop Krez Ninja (modell TM1102B32) Windows 10. Mivel ez a számítógép egy forgatható képernyő, ez szolgál egy univerzális megoldás - sikeresen lehet alkalmazni a munkát, és tanulmányi és játékhoz
Ha például gyakran nyomtat fényképeket és már fáradt változtatni tintapatronokat a nyomtatóban, nézd meg az MFP Epson L850. A hatalmas erőforrás fogyóeszközök, a kiváló nyomtatási minőséget, széles körű funkciók - ez csak néhány előnye ennek a modellnek