Rubrik: Controls · MSFlexGrid/DataGrid | VB-Versionen: VB4, VB5, VB6 | 16.03.05 |
Schnellere Datenausgabe im MS(H)FlexGrid-Control Wie man die Datenausgabe im MS(H)FlexGrid-Control beschleunigen kann, das erfahren Sie hier. | ||
Autor: Dieter Otter | Bewertung: | Views: 13.268 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Das Microsoft FlexGrid-Control ist ein beliebtes Control zur Datenausgabe, da die Formatierung der einzelnen Zellen sehr flexibel ist. Allerdings dauert bspw. das Zuweisen eines Recordsets bzw. das Füllen des Grids oder auch das nachträgliche Formatieren der Zelleninhalte u.U. sehr lange.
Mit einem kleinen Trick kann die Performance aber erheblich verbessert werden!
Neben den vielfältigen Eigenschaften zur Formatierung der Daten verfügt das FlexGrid-Control u.a. auch über eine Eigenschaft namens Redraw. Wenn man diese Eigenschaft vor dem Zuweisen des Recordsets bzw. Füllen der Zellen auf False setzt, wird die Anzeige im Grid während des "Füllvorgangs" nicht autom. aktualisiert, was sich durchaus positiv bemerkbar macht. Nach dem Einlesen der Daten braucht man dann lediglich Redraw wieder auf den Wert True setzen und schon wird die Ansicht aktualisiert.
MSHFlexGrid1.Redraw = False ' jetzt das Grid füllen bzw. die ' Spalten-Eigenschaften festlegen ... MSHFlexGrid1.Redraw = True