![]() |
Eigenschaft eines Ahnen im Erben verstecken - geht das?
Hallo,
ich habe folgendes Problem: Ich haben mir eine eigene Komponente von TDbEdit abgeleitet, um mir ein DbPassword-Edit zu erstellen, dass das Standardzeichen von Windows für Passwörter (Sternchen oder schwarzer Punkt) verwendet. Jetzt möchte ich noch irgendwie die Eigenschaft PasswordChar des TDbEdits irgendwie verschwinden lassen oder zumindest unbrauchbar machen, hab aber keine Idee, wie ich das am besten bewerkstelligen kann. :wiejetzt: Gruß Heiko |
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
Man kann Sichtbarkeiten erhöhen, aber nicht verringern.
|
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
Diese Antwort habe ich befürchtet. Dann werde ich mir wohl was einfallen lassen müssen, um die Property unbrauchbar zu machen :coder2:
|
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
Hi,
Zitat:
Delphi-Quellcode:
Immer wenn tTest2 verwendet wird, gibt es keinen Zugriff auf tTest2.Test (außerhalb der Unit)?
type
tTest1 = class private fTest : String; protected public property test : string read ftest; end; tTest2 = class(tTest1) private property Test; protected public end; |
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
Mit einem Cast auf die Vorgängerklasse kann man dann aber wieder wie eh und je auf die Property zugreifen. Des Weiteren meckert der Compiler immer rum, dass die Sichtbarkeit verringert wurde.
...:cat:... |
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
Zitat:
Zitat:
|
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
Hmm ... die Property PasswordChar ist um Ahnen als Protected deklariert. Füge ich meine Deklaration unter Private ein, meckert der Compiler
Zitat:
Edit: Zitat aus der Delphi-Hilfe: Zitat:
Gruß Heiko |
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
Du kannst alternativ in der Vaterklasse die Getter und Setter Methoden anpassen. Prüfe den Typ der Instanz, und falls der anders ist als den der Vaterklasse, dann schmeiss eine Exception.
|
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
oder Du überschreibst die Property mit Getter und Setter und läßt diese ins Leere laufen!
|
Re: Eigenschaft eines Ahnen im Erben verstecken - geht das?
dann doch lieber eine exception damit man sich nicht später wundert warum etwas anderes als erwartet passiert. Wenn eine Exception fliegt weiß man wenigstens sofort was los ist.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:54 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