Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Stringgrid befüllen > massives Timingproblem (https://www.delphipraxis.net/25771-stringgrid-befuellen-massives-timingproblem.html)

Sharky 12. Jul 2004 13:56

Re: Stringgrid befüllen > massives Timingproblem
 
Hai richard_boderich,

Zitat:

Zitat von richard_boderich
...ich habe in der delphi hilfe gesucht, habe update aber nur im zusammenhang
mit kompletten grids gefunden,...

TStringGrid.Update verwende ich ja auch nicht ;-) Diese Methode zwingt das Grid sich neu zu zeichnen.

Normalerweise wird das TStringGrid jedesmal wenn Du den Inhalt einer Celle änderst komplett neu gezeichnet.
TStringGrid.Rows.BeginUpdate verhindert das neu Zeichnen des Grids solange bis TStringGrid.Rows.EndUpdate aufgerufen wird.

Du sagst quasi: "Hallo StringGrid, jetzt kommen Daten aber ich möchte nicht das du sie darstellst bis ich es dir sage"
Und da das Zeichen sehr viel Zeit braucht bist Du so einfach schneller. Und für jede Zeile des StringGrids .BeginUpDate aufrufen geht im vergleich dazu sehr sehr schnell.

BTW: Du kannst bei deinem Code meine Procedure auch noch aufrufen bevor Du deinen beiden anderen StringGrids (als Parameter immer der Name des entsprechenden SG) mit Daten füllst. Dann wird das ganze noch flüssiger.

Also ganz am Anfang deiner Routine:
Delphi-Quellcode:
begin
  SGBeginUpdate(Form1.StringGrid4);
  SGBeginUpdate(Form1.StringGrid5);
  SGBeginUpdate(Form1.StringGrid6);
  .
  // Jetzt das füllen der drei StringGrids
  .
  SGEndUpdate(Form1.StringGrid4);
  SGEndUpdate(Form1.StringGrid5);
  SGEndUpdate(Form1.StringGrid6);
end;

richard_boderich 12. Jul 2004 14:45

Re: Stringgrid befüllen > massives Timingproblem
 
hallo sharky,

also, das ganze funktioniert nur, wenn ich die ondrawcell und onselectcell

auf nil setze, sonst leider nich , ich koennte mal mein komplettes project posten ,wenn das helfen wuerde ??

mytar 12. Jul 2004 15:28

Re: Stringgrid befüllen > massives Timingproblem
 
Such mal die Property ControlsEnabled, ich hoffe die gibts bei TStringGrid.

mytar

Sharky 12. Jul 2004 20:48

Re: Stringgrid befüllen > massives Timingproblem
 
Zitat:

Zitat von richard_boderich
... ich koennte mal mein komplettes project posten ,wenn das helfen wuerde ??

:shok: sende es mir mal an meine iMehl-Adresse. Dann versuche ich mal mir das ganze anzusehen.

Sharky 12. Jul 2004 20:50

Re: Stringgrid befüllen > massives Timingproblem
 
Zitat:

Zitat von mytar
...ich hoffe die gibts bei TStringGrid....

Gibt es sie oder nicht?

Hai mytar,
bitte schaue doch, bevor Du etwas schreibst, ob es auch geht. Danke :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz