Wie gesagt, mit FMX habe ich keine großen Erfahrungen, aber da sich anscheinend sonst keiner rührt ...
erst mal aufräumen:
- Warum jeweils zwei Mal 'Image1.Bitmap.Clear($FFFFFF)' - einmal reicht.
Und solange das Rechteck, das du zeichnest, genauso groß ist wie die Bitmap und das Rechteck nicht transparent ist, kannst du das auch ganz weglassen.
- Das Setzen der Bitmap-Größe würde ich in das OnCreate-Ereignis des Formulars legen.
Zum seltsamen Verhalten:
Du schreibst nicht, was passiert genau, wenn man Button 3 anklickt. Welche Farbe hast du denn dann? Weiß? Und was passiert, wenn du Button 3 als erstes anklickst?
Zum Positionieren von Komponenten:
klar kann man das - was ist denn genau dein Problem?