Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Konstruktoren überschreiben, überladen


JoeCotton - Di 14.03.06 09:59
Titel: Konstruktoren überschreiben, überladen
Hallo zusammen,

ich hab mal eine paar Fragen zum Thema Konstuktoren und Vererbung.

Ich möchte den Konstruktor von TFrame oder TForm überschreiben bzw. überladen.



Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
 
type
  TBeispiel = class(TFrame)
  private
     
  public
    constructor create(AOwner:TComponent;aParent:TWinControl;Index:string);overload;virtual;
    destructor destroy;override;

  end;


Hier bringt mir mein Compiler immer eine Warnung:
"Methode "create" verbirgt virtuelle Methode von TCustomFrame"!

Was kann ich gegen diese Warnung unternehmen?

Gruß Joe


Tastaro - Di 14.03.06 10:02

overload weg, virtual weg, reintroduce her. :)

Beste Grüße
Tastaro


AXMD - Di 14.03.06 10:02

Warnungen haben den Vorteil, dass man sie ignorieren kann - KANN wohlgemerkt, weil es für die Warnungen meistens einen guten Grund gibt. Den Grund dieser Warnung findest du in der OH bzw. wenn du auf die Warnung klickst und F1 drückst ;)

AXMD


JoeCotton - Di 14.03.06 10:18

danke schon mal für die schnellen Antworten.

reintroduce unterdrück nur die Warnung oder??
Mir kommt die Lösung über reintroduce ziemlich unsauber vor?

Ich hätt auch die Möglichkeit die Übergabeparameter aus dem Aufrufeden Form über
Property zu setzen, wäre das der Lösung über reintroduce vorzuziehen?

Gruß Joe


MightyPit - Di 14.03.06 10:20

laut Delphi7 Hilfe muss eine virtuelle Methode mit reintroduce; overload; überladen werden.
Sinn dessen hab ich aber irgendwie nicht verstanden...