Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#7

AW: Tform.Create überladen

  Alt 27. Jan 2011, 18:05
Bei einem Formular ist der Konstruktor virtuell.
Deshalb würde ich stark davon abraten weitere Konstruktoren einzuführen.
Folgender Code wäre nämlich nicht in der Lage, deinen Konstruktor aufrurufen,
einfach weil er einfach nicht bekannt ist:
Application.CreateForm(TfrmCreateThema, frmCreateThema);
Man kann einen weiteren Konstruktor bei einem Formular einführen, aber man sollte es nicht tun.
Man kann hier Parallelen zu Java Beans ziehen. Dort gibt es ebenfalls nur einen öffentlichen, virtuellen Konstruktor.


Es gibt im Prinzip 3 Wege um einem Objekt Informationen mitzugeben:
  1. Konstruktor
  2. über ein Property
  3. Methodenaufruf
Die Datenübergabe über Properties ist der Standardweg wenn es einen virtuellen Konstruktor gibt..
Andreas
  Mit Zitat antworten Zitat