Alternativen für Objektablage (leider ohne
OOP) :
Als erstes wäre da mal Cut + Paste zu nennen, d.h. man markiere sich seine Komponenten auf einer Form. Mehrere markieren geht mit <Shift> + linke Maustaste. Dann eben kopieren und auf neuer Form einfügen. Hierbei werden die eventuell vorhandenen Ereignisse der beteiligten Komponenten aber nicht mitkopiert. Das was im
OI bereits eingestellt ist wird allerdings kopiert.
Ist umfangreicher Code für die Ereignisbehandlung vorhanden, so muss man den auch markieren, einfügen usw. Beim letzten Schritt bietet Delphi etwas Unterstützung. Sind die zu verwendenden Komponenten markiert, dann kann man oben auf Komponente -> "Komponentenvorlage erzeugen" gehen. Aber Achtung ! Mit eigenen Komponenten hat das überhaupt nichts zu tun !! Man wird danach in der Komponentenpalette einen Eintrag "Vorlagen" finden. Wenn man nun eine dieser Vorlagen auf eine Form legt, so spart man sich, jede Komponente einzeln auf eine Form zu ziehen. Das läuft ungefähr auf dasselbe hinaus, wie bei der Objektablage nur "kopieren" oder "verwenden" auszuwählen. Hauptunterschied ist allerdings, dass es sich um Komponenten-Gruppen handelt und diese auch bei bestehenden Forms auf einen Schlag (mitsamt Ereignissen) eingefügt werden können. Zur Erinnerung : Objektablage behandelt immer ganze Forms, deren Eigenschaften allerdings vererbt werden können.
Im Prinzip ist und bleibt die Komponenten-Vorlage auch nichts anderes als die Vervielfältigung des Codes. Um die EXE nicht zu sehr aufzublähen könnte man das bei vielen gleichartigen Projekten eventuell sinnvoll einsetzen. In einem einzigen Projekt sind alleine schon die zwangsläufig auftauchenden Redundanzen bedenklich / überflüssig.
Eine Form mit der Objektablage erzeugen (ohne inherited), oder eben eine Form erzeugen und da dann aus den Komponenten-Vorlagen was draufzulegen, ob das Sinn macht, das muss jeder selber wissen. Ich sage : gibt nicht allzuviel her.