![]() |
[gelöst] Property von abgel. Klasse überschreiben
Ich versuche gerade krampfhaft die Width und Height -Properties von TGraphicControl in einer davon abgeleiteten Klasse zu überschreiben.
Das Problem ist nämlich, dass ich für das Schreiben dieser Werte eine Set-Prozedur einbauen muss, da diverse Arrays bei diesem Ereignis ihre Länge verändern müssen. Aber ich möchte auch keinen anderen Namen für Width/Height verwenden, da sie ja letzten Endes ihre Funktion beibehalten. Es soll halt nur noch etwas dabei geschehen. Die Resize-Prozedur habe ich schon überschrieben, aber wie mir scheint wird diese nicht aufgerufen, wenn die Größenänderung in der IDE passiert. Das muss/möchte ich aber schon haben :? Bei:
Delphi-Quellcode:
spuckt mich der Compiler an :).
published
property Width: Integer read Width write SetWidth; end; Hätte da jemand eine gute Idee? Dank und Gruß, dizzy |
Re: [gelöst] Property von abgel. Klasse überschreiben
Mirage228 hat's hinbekommen. Hier der Weg:
Delphi-Quellcode:
Man muss also Getter und Setter neu definieren wenn man eine geerbte Property überschreiben will.
type
TMyClass = class(TGraphicControl) private function GetWidth: Integer; procedure SetWidth(w: Integer); . . published property Width: Integer write SetWidth read GetWidth; . . function TMyClass.GetWidth: Integer; begin result := inherited Width; end; procedure TMyClass.SetWidth(w: Integer); begin inherited Width := w; end; Danke! dizzy |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:59 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz