Zuerst muss ich mal gestehen, dass ich in meiner Ausführung einen Fehler gemacht habe:
alles, was unterhalb des Rectangle-Statement steht, müsste eigentlich mit
ImgStr.Canvas. beginnen, da sie in einer Prozedur stehen, wo die
Canvas als Parameter übergeben wird, dort habe die
Canvas einfach
ImgStr genannt - das war wohl nicht so gut. Diese Prozedur wird auch für Exports nach JPG, TIF, usw. verwendet.
Das mit dem
Refresh erscheint mir klar, aber was ist mit dem
OnPaint? Vom Formular?
Vielleicht sollte ich auch noch erwähnen, dass die zu ladende Datei im selben Programm vom Benutzer im üblichen Windows-Dateiauswahlmenü ausgewählt wird. Das geht so
Delphi-Quelltext
1: 2: 3: 4: 5:
| if OpenDialog1.Execute then begin {$ Ermitteln des gesamten Dateipfades } {$ Laden der Grafik } {$ Anzeigen der Grafik } end; |
So weit ist es ereignisgesteuert.
Wie passt nun
OnPaint hier rein? Und welches
OnPaint?
Dann verstehe ich noch nicht, was dies mit der stark vergrößerten Datenmenge zu tun hat.
Bei "normalgroßen" Dateien mit bis zu 1,3 Mio. Punkten hat es immer noch funktioniert.
Moderiert von Th69: Delphi-Tags hinzugefügt