Delphi funkciók: leírás, jellemzők, tippek és ajánlások

A Delphi egy szabadalmaztatott fejlesztői környezet (IDE) A Pascal számára Windows rendszeren. A nyelv objektum-orientált változatát valósítja meg. A fejlesztői környezet a Delphi függvény forráskód-szerkesztőjéhez társított grafikus felületen alapul. A programozási nyelv szerzett népszerűsége miatt a könnyű használat a fejlesztés a grafikus alkalmazások és programok az adatbázishoz kapcsolódó.

Tömbök-a programozás alapja

A Borland Software Corporation 1995 - ben kiadta a Turbo Pascal-Delphi utódját, egy integrált fejlesztői környezetet, amely saját nyelvjárását használja Object Pascal hogy megkönnyítse a Windows alkalmazásokat. Az IDE-hez képest a Delphi funkciói példátlan adatbázis-Támogatással rendelkeztek, többdimenziós környezetet teremtve, amely lehetővé teszi a programozók számára, hogy gyorsabban és kevesebb hibával írjanak kódot, mint valaha.

A nyelv univerzális eszköz volt az alkalmazásfejlesztéshez, beleértve egy kódszerkesztőt, egy vizuális tervezőt, amely támogatta a platformok közötti fejlesztést, egy integrált hibakeresőt, egy kezelési mechanizmust, valamint harmadik féltől származó bővítmények támogatását. A kódszerkesztő új Delphi funkciókat kínált a fejlesztőknek: hibaelemzés és refaktorálás.

Kezdetben a Delphi program tömbje statikus volt. Ez azt jelentette, hogy méretét a kód írásakor ismerni kellett.

A tömbök a programozás alapja

A negyedik változatban új Delphi funkciókat adtak a nyelvi dinamikus tömbökhöz, amelyek méretükben különböztek. A fejlesztőnek nem kellett deklarálnia a méretet a kód írásakor, és programozottan megváltoztathatja azt egy link létrehozásával, sőt, anélkül, hogy memóriát rendelne a tartalomhoz.

A legújabb verzióban az adatok elhelyezése előtt állítsa be a hosszúságot a kényelmes SetLength eljárással. Most, hogy a hossz be van állítva, értékeket rendelnek hozzá, hasonlóan ahhoz, ahogyan a Delphi függvény statikus tömbjével történik. Ebben az esetben a dinamikusakat nullával indexeljük.

Ha a program működése közben meg kell változtatnia a méretet, statikus tömbökkel egyszerűen lehetetlen, dinamikus tömbökkel pedig könnyen megvalósítható. Ehhez hívja a SetLength parancsot, majd használja a tömb újonnan kiválasztott elemeit. A méret megváltoztatása után az eredeti elemek még mindig benne vannak, és nem vesznek el ADATOK.

Statisztikai és dinamikus tömbök

A Delphi függvény statikus tömbjei valójában csak egy összefüggő memóriaterületre mutatnak, amelyet a szükséges adatmennyiség tárolására osztottak ki. A fordító matematikai műveleteket hajt végre, hogy az indexet egy tömb egyik elemére mutató mutatóvá alakítsa, míg a dinamikusak viszont az indirection szintjét adják hozzá.

Statisztikai És Dinamikus Tömbök

A dinamikus tömb olyan rekord, amely információkat tartalmaz róla, beleértve a méretet, az elemek számát és a statikus tömb mutatóját. A SetLength meghívásakor több folyamat fordul elő:

  1. A méret mező frissül.
  2. Új (belső) a Delphi 7 függvény statikus tömbje új mérethez van rendelve.
  3. A régi statikus elemeket átmásolják az újra.
  4. A statikus mutató újra változik.

Ha elegendő hely van az átcsoportosításhoz a belső statikus tömb aktuális helyzetében , és van egy változó, amely a tömbre utal, csak az 1. lépés következik be. Mindez minden alkalommal megvalósul, amikor a hossza megváltozik.

Ha vannak más változók, amelyek ugyanarra a tömbre hivatkoznak, akkor a régi statikus nem törlődik. Amikor a dinamikus tömb mérete megváltozik, az átmásolódik, ami a memóriában történő keresést jelenti. A szükséges idő arányos a mérettel, például a 20 elemből történő másolás hosszabb ideig tart, mint 10-től.

Karakterlánc-operátorok

Karakterlánc-operátorok

Mint minden programozási nyelv, a Delphi változókban is elvégzik a használt helyőrző funkcióját tárolni értékek. Egy adott karaktertömböt tartalmazó változót karakterlánc típusnak deklarálnak. A Delphi kiváló minőségű karakterlánc-operátorokkal, funkciókkal és eljárásokkal rendelkezik.

Mielőtt karakterlánc-adatokat rendelne egy változóhoz, négy karakterlánc-típust kell ismernie. A Delphi függvény rövid karakterlánca-Shortstring. Ez egy (ASCII) karakterekből álló megszámlált tömb, amely soronként legfeljebb 255 karaktert tartalmaz. A tömb első bájtja tárolja a hosszúságot. Ez a működés elve a Delphi 1-ben (16 bites Delphi) volt a fő, és létrehozott egy small nevű változót, amelynek maximális hossza 50 karakter volt.

Karakterlánc-operátorok

Ha egy érték van hozzárendelve a rövid karakterlánc változóhoz, a karakterlánc csonka lesz. Különösen, ha meghaladja a maximális hosszúságot az ilyen típusú.

A változókat és azok típusát a használat előtt deklarálni kell. A változó típusát úgy kell megválasztani, hogy tartalmazza a változót:

  1. Az egész szám egy egész szám, például 42 vagy -5.
  2. Egyszeres vagy kettős-vesszővel ellátott típusként használják, például 3,3.

A műveletek numerikus változókra alkalmazhatók:

  • kiegészítés;
  • kivonás;
  • szorzás;
  • modul - csak egész számra alkalmazható;
  • char - egyetlen karaktert tartalmaz, például m;
  • string-mondatokat tartalmaz, például Hello world;
  • logikai értékek-igaz és hamis.

2 karakterlánc kombinálásához használja a " + " operátort. Példa: a Hello + world Hello world néven kerül megvalósításra.

Változók és állandók

A paraméter az információt képviseli, és hívást kezdeményez a Delphi függvényre az eljárásban. A változó egy függvényen belül deklarált adat, amely kizárólag abban érhető el. Ez egy helyi érték, a fejlesztő által megkövetelt változás. Globális változók állnak rendelkezésre az egész dpr-ben és a projektben. Ezeket csak kivételes esetekben szabad használni.

Változó használata esetén az összes fájlban deklarálódik, ahol használják. Csak a Delphi függvényeknek és eljárásoknak paraméterként átadott változók nincsenek deklarálva abban, ahol ezeket alkalmazzák. A var kulcsszót használják a hirdetéshez. Ezeket be lehet jelenteni .DPR vagy .pas fájl eljárások.

A Tdbgrid Delphi komponens a VCL egyik gyöngyszeme. Úgy tervezték, hogy lehetővé tegye a felhasználó számára az adatok táblázatos rácsban történő megtekintését és szerkesztését különböző módokat biztosít az adatok megjelenítésének testreszabása. Ha például színt ad az adatbázisrácsokhoz, az javítja az adatbázis egyes sorainak vagy oszlopainak megjelenését, és megkülönbözteti annak fontosságát.

Delphi fájlok

A Delphi a forrásfájloknak és a grafikus interfészeket meghatározó indexkártyáknak (űrlapoknak) megfelelő egységekből áll. A különböző fájlok táblázata, amelyeket esetleg meg kell változtatni, valamint azok célja.

Fájlkiterjesztés

Leírás

.a DCR

Projekt Fájl

.DFM

A tulajdonságokat tartalmazó űrlaprajz

.DPR grafikai elemek

A Projektfájl az alkalmazás szíve, összekapcsolja a kódot tartalmazó összes fájlt (.pas) .DPR Delphi-vel

.PAS dátum funkció

Az alkalmazáskódot tartalmazó forrásfájl

.bdsproj

A projekt fájl társítva .DPR

.RC

Windows Erőforrás Fájl

A fordítás után generált fájlok táblázata.

Fájlkiterjesztés

Leírás

.BPG

Projekt csapat fájl.

.dcu

Fordításkor létrehozott fájl, de nem kötelező.

.dpk

A forrásfájl.

.dof csomag

DSK projekt opciók fájl.

.

Preferencia IDE.

.RES

egy Windows erőforrás fájl, tartalmazhat ikonokat, bitképeket, hangokat.

Pos funkció

A Delphi POS függvény egy egész számot ad vissza, amely jelzi az egyik karakterlánc első előfordulásának helyzetét a másikban. Ez a következőképpen jön létre. A Pos megkeresi a megadott karakterlánc első teljes előfordulását. Általában egyetlen idézőjelben kínálják a forrásban. A forrás valamilyen változó.

Ha a Pos talál egy karakterláncot, akkor a karakter pozícióját adja vissza forrás, az Str első karaktere pedig egész értékként, különben a Delphi függvény 0 értéket ad vissza. A karakterlánc és a forrás karakterláncok lesznek. A régimódi Pos funkció - a leggyakoribb a keresés módja mindig az elején található.

A frissített Pos funkció segít megoldani ezt a problémát. Megkeresi az S1 sort az s2-ben, és visszaadja a pozícióját, ahogy a régi Pos teszi. Ezenkívül meghatározhatja a keresés kiindulási helyzetét és maximális hosszát.

Pos funkció

Könyvtári függvények importálása

Könyvtári rutinok importálása (.DLL), csatoljon egy irányelvet a következő formában: externalstringConstant, a függvények és eljárások fejlécének végén, ahol a string Constant a könyvtárfájl neve idézőjelben. Lehetőség van egy másik névvel rendelkező szubrutin importálására. Ehhez adja meg az eredeti nevet a külső irányelvben:

Külső stringConstant1, namestringConstant2.

Ahol az első karakterlánc-állandó megadja a könyvtárfájl nevét, a második pedig az alprogram eredeti neve. A következő utasítás importálja a függvényt a felhasználóból32.dll. A függvény eredeti neve MessageBoxA. Név helyett számot is használhat az importálási rutin azonosításához:

externalstringállandóindexintegerállandó.

Ahol az integerConstant a szubrutin indexe az export táblázatban.

A behozatali nyilatkozatnak a szubrutin nevének pontos megjelölését és esetét kell követnie. Az eljárás importálása után azonban már nincs különbség a kettő között.

Példa egydimenziós tömb létrehozására

Tegyük fel, hogy 3 egydimenziós tömböt kell létrehoznia a társadalom 50 tagja számára szoftverfejlesztők. Az 1. tömb a nevek, a 2. az e-mail, a 3. pedig a Letöltések száma.

Ezek közül bármelyik rendelkezik indexekkel és kódokkal, hogy mind a 3 listát szinkronban tartsa. Természetesen, meg lehet próbálni egy tömb. Ehhez nevek és e-mail címek karakterláncaira, valamint egész számú letöltésre van szükség.

Például egy későbbi deklaráció rendezi a REMember nevű rekordtípust, amely ebben az esetben használható.

A REMember nevű rekord típusa

Valójában a rekordadatok kialakítása képes mindenféle integrált Delphi típus keverésére, beleértve a. Rekordok állapota különböző típusú alkatrészek rögzített gyűjteményei. Bármely elem hasonló a név és Típus változóhoz.

A Delphi tag függvény típusa 3 mezőt fed le: karakterlánc érték név, e-mail és egész bejegyzések. A bejegyzéstípus beállítása után deklarálhatja a Tagváltozót. Nem osztja el a memóriát a nevekhez, e-mailekhez és bejegyzésekhez. Annak érdekében, hogy gyakorlatilag hozzon létre egy Tagrekordot, deklarálja annak változóját.

Példa egydimenziós tömb létrehozására

Az OnMouseOver komponensek használata

Az OnMouseMove események kódja a TDBGrid összetevővel jön létre, úgy, hogy tudsz keresse meg a DBGrid sorokat és oszlopokat (cellákat) az egér kurzor helyén. Ha a rács felett helyezkedik el, akkor az OnMouseMove eseménykezelő aktiválódik. Ezután az adatkészlet összetevő moveBy módszerével állítsa be a megjelenítendő aktuális rekordot.

Az OnMouseOver komponensek használata

Ezzel egyenértékű kódot használnak annak bemutatására, hogy az egér kurzor hol található, és módosítsa azt, amikor a címsor felett helyezkedik el. A az aktív telepítés helyes telepítése rekord, amire szüksége van "hogy hack" DBGrid és kap hozzáférést a védett sor tulajdonság. Az összetevő tcustomdbgrid tulajdonságsorai hivatkozást tartalmaznak az aktuálisan aktív sorokra.

Számos összetevő hasznos tulajdonságokkal és módszerekkel rendelkezik, amelyeket láthatatlanként vagy a Delphi fejlesztői védettek. Az ilyen elemekhez való hozzáférést a "biztonságos hackelés"nevű egyszerű technika biztosítja.

Ez a kód, amikor az egérmutatót a rács fölé viszi, kiválasztja a rácsban megjelenített bejegyzést "alatt" a kurzor. Ugyanakkor nem kell rákattintania a rácsra a meglévő rekord megváltoztatásához. Az OnDrawColumnCell esemény a cellákban lévő adatok egyedi grafikájának szükségességének kezelésére szolgál.

Delphi Alkalmazások Nyúzása

Ezek az összetevők témák és héjak hozzáadásával megváltoztatják az alkalmazások megjelenését. Ez egy egyszerű módja annak, hogy javítsa a grafikus felhasználói felület (GUI). VCLSkin-egy könnyen használható komponens létrehozása grafikus felület egy Delphi alkalmazás. A VCLSkin létrehoz egy témát vagy borítót a forráskód megváltoztatása nélkül.

A DynamicSkinForm VCL könyvtár támogatja az űrlapok, menük, eszköztippek borítóit, valamint számos szabványos és nem szabványos eredeti vezérlőt.

. A bőrnek sok van objektumok és hatások hűvös alkalmazásokhoz, mint például a WinAmp és az iTunes. Egy speciális szerkesztő lehetővé teszi a felhasználó számára a bőr testreszabását. A SkinAdapter egy DynamicSkinForm komponens, amely lehetővé teszi alkalmazásbőrök létrehozását a forráskód megváltoztatása nélkül.

A SUISkin automatikus alkalmazást kínál a bőrök támogatásával. Ezzel a meglévő projektek módosítása nem szükséges. Csak húzza a bőr motor alkatrész rá a fő formája, majd állítsa be néhány tulajdonságot. Automatikusan kezeli az összes űrlapot és párbeszédablakot. Skin fájlokat lehet összeállítani egy EXE fájlt. A végrehajtás során könnyen be - vagy kikapcsolhatja őket.

Az App Face user Interface development package megoldás a VC, VB - ben használható alkalmazások vizuális grafikus interfészeinek létrehozására.Net, Delphi, Visual Basic, C++ Builder és Win32 SDK. Ez magában foglalja a bőrkezelést, a vizuális bőrök létrehozásának eszközét, a forráskód példáit, valamint egy technikai útmutatót. Az appface.a dll könyvtár a kernel egyik összetevője, amely automatikusan feldolgozza az összes létrehozott ablakot a célalkalmazásban.

A programozási környezet előnyei

Delphi Funkciók

Delphi minden bizonnyal létrehozta magát, mint az egyik legstabilabb programozási környezet, amely megváltozik alak és méret. Nem számít, milyen, ugyanolyan rugalmas marad, mint a kódbázis, amelyből származik.

Okok, amelyek miatt a Delphi-t továbbra is használják:

  1. Tiszta szintaxis, amely a kódot a lehető legolvashatóbbá teszi.
  2. Drag-and-drop mechanizmus a megvalósításhoz, amely lehetővé teszi a GUI szoftver gyors létrehozását.
  3. SQL adatbázis támogatás.
  4. Támogatja az összes Windows API-t.
  5. Teljes-objektum-orientált programozás.
  6. Kompatibilis a C ++.
  7. Nagyon alkalmazkodó VCL környezet.
  8. Minimális alkalmazás karbantartás szükséges.

Apogéje alatt egy hatalmas közösség sok kiváló minőségű szoftvert fejlesztett ki Delphi eljárásokkal és funkciókkal rendelkező komponensek formájában, amelyek közül sok teljesen ingyenes és nyílt forráskódú. Ma mindez még mindig működik, csak egy problémával - a tapasztalt programozók hiánya Delphi-ben.

Cikkek a témában