Maximale Größe eines TStringGrid

Rund um die LCL und andere Komponenten
Antworten
Benutzeravatar
jwdietrich
Beiträge: 176
Registriert: Mo 20. Okt 2008, 20:50
OS, Lazarus, FPC: macOS 10.4-14.1, Windows 2000-11, Raspbian (L 3.7.0, FPC 3.2.2)
CPU-Target: PowerPC, Intel, ARM
Wohnort: Hattingen, NRW
Kontaktdaten:

Maximale Größe eines TStringGrid

Beitrag von jwdietrich »

Wie groß darf ein StringGrid werden? In der mir vorliegenden Dokumentation ist dazu nichts zu finden.

Gibt es Grenzen in Bezug auf die Zeilen- oder Spaltenzahl oder bezüglich des maximal erlaubten Speicherplatzes? Gibt es Unterschiede bei den einzelnen Widgetsets (Carbon, GTK, Windows)?

Bora4d
Beiträge: 290
Registriert: Mo 24. Dez 2007, 13:14
OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux)
CPU-Target: AMD64X2

Re: Maximale Größe eines TStringGrid

Beitrag von Bora4d »

Da TStringGrid eine in Lazaruserstellte Komponente ist Größe von Integer nehme ich mal an, weil die RowCount, ColCount als integer definiert ist.

Maik81ftl
Beiträge: 619
Registriert: Mi 9. Mär 2011, 16:34
OS, Lazarus, FPC: Ubuntu10.04 LTS (L 0.9.31.0 FPC 2.4.4)
CPU-Target: 64Bit
Wohnort: seit 01.06.2011 in Wahlstedt

Re: Maximale Größe eines TStringGrid

Beitrag von Maik81ftl »

wenn ich weder einen Denk- noch einen rechenfehler habe, hab kann ein StringGrid ca 1Gig an daten sammeln.
Ubuntu 10.04 LTS ist meine Heimat. Lazarus ist meine Sprache :D und der Kreis Segeberg meine LIEBE :D

Benutzeravatar
jwdietrich
Beiträge: 176
Registriert: Mo 20. Okt 2008, 20:50
OS, Lazarus, FPC: macOS 10.4-14.1, Windows 2000-11, Raspbian (L 3.7.0, FPC 3.2.2)
CPU-Target: PowerPC, Intel, ARM
Wohnort: Hattingen, NRW
Kontaktdaten:

Re: Maximale Größe eines TStringGrid

Beitrag von jwdietrich »

Vielen Dank für die Hinweise. Bei mir kommt es wesentlich früher (d. h. bei geringerer Datenmenge) zu Fehlern, aber das hängt vom Widgetset ab.

Falls es jemanden interessiert: Ich entwickle ein Simulationsprogramm für einen endokrinen Regelkreis (http://simthyr.sourceforge.net" onclick="window.open(this.href);return false;). Am Mac (Carbon Widgetset) kann ich problemlos 14 Tage simulieren, unter Windows XP nur ca. 7 Tage und unter Linux (openSUSE) stürzt das Programm bereits bei zwei Tagen ab.

Da die Unterschiede so eklatant sind, handelt es sich hier offensichtlich entweder um einen Fehler des Betriebssystems oder des Widgetsets. Anscheinend habe ich keine andere Wahl, als durch Versuch und Irrtum herauszufinden, wieviel unter jedem Widgetset möglich ist und dann die Daten entsprechend "auszudünnen", d. h. bei längeren Simulationsläufen in das Grid nur jeden 2. oder 3. Wert o. ä. zu schreiben.

MAC
Beiträge: 770
Registriert: Sa 21. Feb 2009, 13:46
OS, Lazarus, FPC: Windows 7 (L 1.3 Built 43666 FPC 2.6.2)
CPU-Target: 32Bit

Re: Maximale Größe eines TStringGrid

Beitrag von MAC »

am besten versuchst du einmal die zahl rauszufinden wann das abstützt...
Und wenn es bald zum Abstutzt kommt tust du am besten einmal das Ganze StringGrid abspeichern
Am besten mit nem 2ten Thread wenn du die Simulation nicht stören willst...
Du könntest das ja öffeters machen und die Files ungefähr so nennen:
"Simthyr-Messung-25.09.2011bis30.09.2011.xml" oder so ähnlich :D

Code: Alles auswählen

Signatur := nil;

Bora4d
Beiträge: 290
Registriert: Mo 24. Dez 2007, 13:14
OS, Lazarus, FPC: WinXP-Pro-Sp3, Xubuntu 12.04, (Laz 1.1-SVN Mai2012, FPC 2.6.1 / 2.6.0-Linux)
CPU-Target: AMD64X2

Re: Maximale Größe eines TStringGrid

Beitrag von Bora4d »

Du kannst StringGrid im virtuellen Modus wie bei DBGrid betreiben. Also du verwaltest die Daten Grid übernimmt die Anzeige. Dann müssten keine Probleme mehr auftauchen.
Ich verwende immer KGrid mit dem kann man das sehr leicht machen. Hier findest du KGrid:
http://www.tkweb.eu/en/delphicomp/kgrid.html

Antworten