Einzelnen Beitrag anzeigen

FirstTry

Registriert seit: 1. Okt 2015
10 Beiträge
 
#15

AW: Threadübergreifende Bitmap

  Alt 2. Okt 2015, 13:53
Alle Win32-Ressourcen (Und TCanvas, TBitmap verwenden solche) sind nur im Erzeugenden Thread gültig. Alle Aktionen mit diesen müssen im erzeugenden Thread erfolgen.
Und die VCL baut hier (aus verständlichen Gründen) keinen Threadschutz um den Zugriff herum.
Die sporadischen Fehlermeldungen sind eigentlich nur Zufällig funktionierende Zugriffe.
Ich verwende nur FBild in beiden Threads, und wenn ich irgendwas mit FBild mache rufe ich die Methode im Thread immer mit synchronize auf, also müsste das "eigentliche" zeichnen doch auch im GUI-Thread passieren oder nicht?


Schon funktioniert es!
Nein selbst dann funktioniert es nicht!
Und zusätzlich habe ich dann eine (kleine) Kreuzreferenz zwischen Unit1 und 2, Zeichne unnötigerweise auf ein Zwischenbitmap, da ich von der GUI ja nicht neuzeichnen sollte und abgesehen davon ist es echt nicht schön von einer Klasse auf die "höhere" Klasse zuzugreifen.

Zufälligerweise.
Jedes Zeichnen aus dem Thread auf im Hauptprogramm erzeugte Formulare kracht früher oder später.
Nein, es funktioniert nicht einmal.
Das sehe ich auch so, deshalb möchte ich die Zeichnung nur "irgendwie" (aber ordentlich!) rüberkriegen...

Danke für eure Hilfe, leider hat keiner einen funktionierenden Lösungsansatz bishher liefern können.
  Mit Zitat antworten Zitat