Schwäche? Die Streamer der Komponenten brauchen nun einmal die
RTTI. Wilst du deshalb auf einen Form Designer verzichten?
Natürlich nicht.
Es ist nur so, das hier zwei Dinge vermischt wurden: Sichtbarkeit im Sourcecode und Persistenz.
Man könnte durchaus private Komponenten auf einem Formular haben, sie mit dem OE anzeigen/editieren und sie automatisch in der
DFM speichern/laden.
Dazu müsste Delphi natürlich ein neues Attribut haben (z.B. "persistent") und intern müsste sich auch einiges ändern:
Delphi-Quellcode:
TForm1 =
class(TForm)
{ wie bisher, Komponenten sind published und persistent }
Edit1 : TEdit;
Label1 : TLabel;
private persistent
Edit1 : TEdit;
{wird in DFM gespeichert, ist aber für aussenstehende Objekte privat}
private
FCounter : integer;
protected
procedure Irgendwas;
virtual;
public
procedure SetupFormular;