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 Komponenten Eigenschaften... (https://www.delphipraxis.net/33065-komponenten-eigenschaften.html)

LoL 1. Nov 2004 09:15


Komponenten Eigenschaften...
 
moin

mal ne frage: ich hab ne komponente geschrieben funzt einwandfrei nur eine sache ist unschön. wenn ich die auf mein formular ziehe wird sie wunderbar gezeichnet. jetzt ändere ich eine eigenschaft die das aussehen der kompo verändern soll und die komponente soll neu gezeichnet werden! das aussehen wird aber erst geändert wenn ich die komponente ich sie auf dem formular zb. verschiebe. es geht mir nur um die designer zeit nicht zur laufzeit da geht alles!

Bernhard Geyer 1. Nov 2004 10:57

Re: Komponenten Eigenschaften...
 
Du solltest z.B. durch Aufruf von Invalitate der VCL/Windows mitteilen das ein neuzeichnen des Controls nötig ist.

Robert Marquardt 1. Nov 2004 13:30

Re: Komponenten Eigenschaften...
 
Die Funktion heisst Invalidate.

Eine typische Set-Methode einer Property sieht so aus:
Delphi-Quellcode:
TMyComponent.SetMyProp(Value: TWhatever);
begin
  if FMyProp <> Value then
  begin
    FMyProp := Value;
    Invalidate;
  end;
end;
Der Grund fuer die if-Abfrage ist, das Invalidate eine moeglicherweise sehr zeitaufwendige Sache ist.
Es wird mit hoher Wahrscheinlichkeit das ganze Fenster neu gezeichnet, also unterdrueckt man
ueberfluessige Zuweisungen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:03 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