Announcement

Collapse
No announcement yet.

2 Fragen zum Thema Stringgrid

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • 2 Fragen zum Thema Stringgrid

    Hi ich gebe eine große Menge Datein in einem Stringgrid aus.
    Dazu habe ich nun 2 Fragen
    1. gibt es eine Methode ein Stringgrid schnell und effizent zu leeren. Soweit ich das bislang festgestellt habe, reserviert das Stringgrid ja erst den Speicher für seine Zellen, wenn diese auch benötigt werden. Wie kann ich diese aber wieder freigeben??
    2. Da ich teilweise sehr kurze Strings ausgebe scheint mir das Stringgrid meist viel zu viel Speicher zu reservieren, gibt es da eine bessere Komponente/Methode??

  • #2
    Dafür gibt es mehr Möglichkeiten:

    - Du betreibst das TListView im Virtual Modus (Demo im Unterverzeichnis Virtual Listview). Dann mußt Du jedoch alle Verwaltungsarbeiten selbst erledigen

    - Falls Du ein paar $ ausgeben kannst würde ich dir das <a href="http://www.lmdinnovative.com/products/lmdelpack/">TElTreestingGrid vom ElPack</a> empfehlen. Diese bietet für sehr große Datenmenge ebenfalls einen "virtual Modus". Aber auch im Normalen Modus bietet es m.E. sehr schnell

    - Auch das <a href="http://www.delphi-gems.com/VirtualTreeview/VT.php">Virtual TreeView</a> bietet sich als kostenlose alternative für große Datenmengen an. Ist aber m.E etwas komplizierter zu Programmieren

    Comment


    • #3
      Ich schau mal was ich mache, aber danke schonmal

      Comment


      • #4
        Es gibt da die Klasse TStringGridStrings, die man aber nicht direkt verwendet. Objekte dieser Klasse werden intern von TStringGrid-Komponenten für die Strings (und die zugehörigen Objekte) in einer Zeile oder Spalte des Gitters erzeugt.
        Nun lassen sich mit Clear alle Strings aus der Liste entfernen, einschließlich aller Referenzen auf damit verknüpfte Objekte. Clear ersetzt jeden String mit einem leeren String und jede Objektreferenz mit NIL

        Comment

        Working...
        X