Használata stringgrid komponens programozás - programozás C, Delphi, C #
Példaként egy komponens a bemeneti stringGrid tömb, úgy egy programot, amely kiszámítja a számtani középértéke az elemek a tömb. Program párbeszédablak ábrán látható. 5.3. stringGrid komponens lehet belépni a tömb, és alkatrészek Label1 Label2 - megjelenítéséhez magyarázó szöveget és a számítás eredményeként Buttoni - indítására a számítási folyamat.
Ábra. 5.3. Egy párbeszéd ablak bemeneti és array
StringGrid komponenst formájában adjuk hozzá, pontosan ugyanaz, mint a többi komponens. Miután az így alakul ki kell elvégezni a beállítást a táblázat szerint. 5.2. Az értékek a szélesség és magasság tulajdonságokat kell használni az egeret, hogy állítsa be úgy, hogy a méret a komponens azonos volt vonal méretben.
A szöveg a program listán látható 5.2.
5.2 táblázat. Ingatlan értékének StringGrid1 alkatrész
Listing 5.2. Bevitele és feldolgozása egy sor egészek
Ablakok, üzenetek, SysUtils, variánsok
Osztályba tartozó, Graphics, Controls, Forms, Dialogs, rácsok, StdCtrls;
eljárás ButtonlClick (Sender: TObject); magán
eljárás TForml.ButtonlClick (Sender: TObject); var
a. array [1..5] egész szám; // tömb
summ: integer; // elemek összege
sr: real; // számtani átlaga
i: integer; // index
// úgy vélik, hogy ha a cella üres, a megfelelő
// tömb elemet s értéke nulla
Ha a length (StringGridl.Cells [i-1, 0]) <>0
majd a [i]: = StrToInt (StringGridl.Cells [i-1,0])
summ: = summ + a [i]; sr: = summ / 5;
Összefoglalva eredmények Label2.Caption: =
'Sum elemek:' + IntToStr (summ)
+ # 13 + „számtani átlag:„+ FloatToStr (SR);
A tárgyalás után fut a program van egy vágy, hogy módosítsa a tömb input folyamat. Tehát, nem lenne jó, ha a kurzor automatikusan a következő cellája, például eredményeként egy gombnyomás
Event text onkeypress feldolgozási eljárás listán látható 5.3. Megjegyzés: a Col tulajdonsága, hogy miközben a program tartalmaz egy táblázatot oszlop számát, ahol a kurzor található. Ez a funkció is használható, hogy a kurzort a kívánt táblázatcellába. Ugyanakkor szem előtt tartani, hogy az oszlop a táblázatban, de mivel a vonalak számozása nullától.
Listing 5.3. Esemény feldolgozási eljárás onkeypress
eljárás TForm1.StringGridlKeyPress (Sender: TObject;
# 8, '0' .. '9'. ; // számok és a legfontosabb
# 13: // a kulcs
ha StringGridl.Col
majd StringGridl.Col: = StringGridl.Col + 1;
mást kulcs: = Chr (0); // többi karakter nem engedélyezettek
Ha azt szeretnénk, hogy vezessenek be egy sor lebegőpontos számok (a: array [1 5] valós), akkor onkeypress esemény eljárás bonyolultabb, így amellett, hogy a számok megengedett karakterek elválasztó karaktert (vessző vagy pont - attól függ, hogy a Windows-beállítások) és .. mínusz. Annak érdekében, hogy egy program barát tekintetében a felhasználó kérheti trükk helyettesítő helytelen behelyezés határoló igaz felhasználó. Határozza meg, mely elválasztó karaktert engedélyezett a jelenlegi beállítás Windows, akkor vegye fel a kapcsolatot egy globális változót Decimaiseparator.
Listing 5.4 mutatja a szöveg beviteli modul alkalmazását és feldolgozásának egy sor tört számok. A feldolgozási eljárás onkeypress biztosít bemeneti eseményeket egy táblázat cella csak megengedett, ha a felvétel egy frakcionális szimbólumok száma.
Listing 5.4. Bevitele és feldolgozása a tömb a tört számok
Ablakok, üzenetek, SysUtils, Változatok, osztályok,
Graphics, Controls, Forms, Dialogs, rácsok, StdCtrls;