Hi!
AutoSize wird in der Klasse TControl eingeführt. Warum kann ich jetzt die Eigenschaft AutoSize nicht auslesen?
Auch schon die Code-Vervollständigung bietet mir AutoSize nicht an, auch nicht für T(Scrolling)WinControl etc. Es ist aber nicht möglich, die Control als eine weiter abgeleitete Klasse zu casten, da die Objekte ja ziemlich unterschiedlich sein können. Wie lese ich Autosize aus?
Delphi-Quellcode:
procedure RepaintWinControl(_Control: TWinControl);
var
i: Integer;
begin
if _Control.InheritsFrom(TWinControl) then begin
for i := 0 to _Control.ControlCount - 1 do begin
if _Control.Controls[i].InheritsFrom(TWinControl) then begin
RepaintWinControl(TWinControl(_Control.Controls[i]));
end else begin
if _Control.Controls[i].InheritsFrom(TControl) then begin
_Control.Controls[i].Invalidate;
end;
end;
end;
if (_Control as TControl).AUTOSIZE then begin // <-- führt zu Fehler beim Kompilieren
// irgendwas
end;
_Control.Invalidate;
end;
end;