Einzelnen Beitrag anzeigen

paul.kunig

Registriert seit: 25. Sep 2017
42 Beiträge
 
Delphi 10.3 Rio
 
#16

AW: Radieren/Freilegen von Bildern mit FMX

  Alt 31. Jul 2019, 19:47
Hallo striderx,

ich habe es extra so ausführlich aufgeführt.
Das Löschen der Bitmap kann in diesem Fall ignoriert werden. Ansonsten hast du Recht, dass es einmal reicht.
Wie gesagt, in diesem Fall uninteressant.

Die Bitmap-Größe muss angegeben werden, da sonst kein Bitmap angezeigt wird.

Das Ganze wird im Normalfall im onCreate einmalig gesetzt. Zu Anschauungszwecken und zum Verständnis hier in verschieden Routinen verteilt.

Die Farbe ist die Standardfarbe des Image. Auch wenn der Button3 zuerst betätigt wird tut sich nichts.

So wie es aussieht hat Delphi noch immer Macken.

Der Fehler liegt in dieser Zeile:
 Image1.Bitmap := TBitmap.Create; Im Normalfall werden hier keine Parameter angegeben. Auch bei Nutzung von Strg+Leertaste wird nur Create ohne Parameter angeboten.

Tatsächlich gibt es noch constructor Create, der Parameter erwartet.
Dieses Create funktioniert aber nur bei richtiger Nutzung.

Erwartet wird hier ein Integer! Übergibt man allerdings Image.width(in Delphi 10 ist width ein Single), so funktioniert das Ganze nicht. Der Compiler zeigt allerdings keinen Fehler an.

Fazit:
Nur der Aufruf von Create führt dazu, dass das Bitmap nicht angezeigt wird.
Der Aufruf von Create mit Parametern vom falschen Typ führt ebenfalls zum Fehler wie vorher beschrieben, wird aber vom Compiler ignoriert.

Lediglich der Aufruf von Create mit Parametern vom richtigen/erwarteten Typ bringt das gewünschte Ergebnis.


Um eine Komponente zu Positionieren gibt man die Position von Links und von Oben an.
Label1.Left gibt es aber nicht.

Gruß
  Mit Zitat antworten Zitat