Einzelnen Beitrag anzeigen

weisswe
(Gast)

n/a Beiträge
 
#1

Styles - verliert Eigenschaften beim Scrollen!?

  Alt 24. Aug 2016, 10:19
Hallo!

Ich habe ein seltsames Phänomen in meinem Firemonkey Projekt (Windows).
Ich erstelle ein eigenes Style for einen TCornerButton (füge nur die Komponente TRectangle hinzu, um den Button einfärben zu können!)
Den Buttons gebe ich im Feld StyleLookUp den neuen Style.

Jetzt schreibe ich folgenden Code, um den Button einzufärben:
Delphi-Quellcode:
fmxo := btn.FindStyleResource('cbbackground'); // fmxo: TFmxObject;
if (fmxo <> nil) then
begin
   r := (fmxo as TRectangle);
   if Assigned(r) then r.Fill.Color := cleared;
   // oder Text Eigenschaft
end;
(CornerButton1.FindStyleResource('text') as TText).Text := 'Verliere Text!'; // <- verliere Text beim Scrollen und neuzeichen!
//CornerButton1.Text := 'Text bleibt!'; // <- Text bleibt beim Scrollen und neuzeichen!
So weit so gut - Button wird rot gefärbt und Text wird auf 'Verliere Text!' geändert.

Nun das Problem:
Es liegen mehrere Buttons auf einer TVertScrollBox-Komponente.
Scrolle ich nun weiter runter, um mehrere Buttons zu sehen und wieder rauf, dann wird die Eigenschaft wieder zurückgesetzt (weisser Button und Originaltext).
Hab ich da was übersehen?

Muss ich beim Neuzeichnen (onPaint) immer die Eigenschaft erneut setzen?
Das würde funktionieren, jedoch verstehe ich den Grund nicht!


/Werner

Geändert von weisswe (24. Aug 2016 um 11:05 Uhr)
  Mit Zitat antworten Zitat