Einzelnen Beitrag anzeigen

Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#47

AW: Bitmap.Canvas -> Form.Canvas ... nix zu sehen

  Alt 18. Jul 2018, 15:06
Neues ...

@jaenicke
System.TMonitor.Enter/Exit auf irgendeine andere Bitmap als innerhalb der aufrufenden Klasse anzuwenden, geht hier völlig in die Hose. Programmabsturz.
Da ich keine Ahnung von der Anwendung dieser Methoden habe und auch nix wirklich gescheites dazu finde, hab ich das erst mal verworfen.
Und Zuweisen von Handles von Quell- zu Ziel-Bitmap scheint ohne Release (BM ungültig ?!) auch irgendwie nicht zu funzen. Für jedes Update eine neue BM zu erzeugen ist hier nicht unbedingt erstrebenswert.

Betreff Synchronize:
Remi Lebeau schrieb im SOF, das NIL als Param das gleiche wäre wie TThread.CurrentThread. Er sollte es wissen.
Desweiteren las ich irgendwo, das es angeblich nix anderes (?!) machen soll wie CSLock.Enter/Leave. Hhhmmm.
Allerdings:
Mit Synchronize(NIL, ...) gibt es hier (sowohl in der o.g. Demo und meinem eigentlichen Proggy) keinen Absturz oder AV's - aber wieder mal bleibt schlicht und ergreifend die Anzeige "irgend wann mal hängen".
Der gleiche Effekt, als wenn ich meine Quell-BitMap NICHT mit Assign zuweise, sondern stattdessen Canvas.CpoyRect oder Canvas.Draw probiere.

Auf was wird da eigentlich "gesynchronized" ? Auf den Main-Thread/-Form der App ? Falls ja, da will ich doch gar nicht hin ....
Ist denn eine extra OSD-Form nicht auch ein weiterer Thread ? Auf die/den will ich aber (aus einem wiederum weiteren Fred / DirectSHow) schreiben ....
  Mit Zitat antworten Zitat