Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.031 Beiträge
 
Delphi 12 Athens
 
#4

AW: TForm als Object

  Alt 3. Feb 2011, 11:19
Visual Basic/PHP/JavaScript und Co. parsen die Objekteigenschaften wärend des Aufrufs.
In Delphi kennt/akzeptiert bei einer Objektvariable nur die Eigenschaften, welche im Typen vorhanden sind.
(Falls man weiß, daß mehr im Objekt drinstekt, dann kann man über einen Cast den Typen der Variable nachträglich erweitern.

var Obj: TObject;

Delphi-Quellcode:
Obj := TForm.Create; // oder Obj := TfrmMain.Create;
if Obj is TForm then
  TForm(Obj).Caption := 'neuer Titel'; // oder (Obj as TForm).Caption := 'neuer Titel';
Wie gesagt, ohne Cast mußt du, innerhalb der entsprechenden Vererbungslinie, mindestens einen Typen für deinen Parameter verwenden, wo die gewünschte Funktion schon enthalten ist.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat