Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Styles - verliert Eigenschaften beim Scrollen!? (https://www.delphipraxis.net/190044-styles-verliert-eigenschaften-beim-scrollen.html)

weisswe 24. Aug 2016 09:19

Styles - verliert Eigenschaften beim Scrollen!?
 
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! :roll:


/Werner

Rollo62 25. Aug 2016 10:59

AW: Styles - verliert Eigenschaften beim Scrollen!?
 
Wo steht denn dein Code, einmal im FormCreate ?

Versuch mal das ins OnApplyStyleLookup zu legen.
https://delphihaven.wordpress.com/20...gned-captions/
http://www.delphipraxis.net/179797-f...-sich-aus.html

Rollo


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:31 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz