Eigene Form ins Repository - Neue Formen sollen von dieser abgeleitet sein



  • Hallo,

    hoffe ich hab den Titel richtig gewaehlt. Es geht um folgendes:

    Hab fuer ein Projekt auf der Arbeit eine Form erstellt, welche von TForm
    abgeleitet ist. In dieser Form hab ich bereits ein paar Voreinstellungen
    gemacht (Schriftgroesse, Schrifttart, etc.) und hab diese Form dem
    Repository hinzugefuegt. Soweit so gut, aber wenn ich jetzt auf Datei ->
    New -> Others gehe und in nem Tab diese Form auswaehle, wird eine Form
    erstellt, welche von TForm abgeleitet ist und den Namen meiner Form im
    Format 'TMeineForm1' hat.

    Das will ich aber nicht, da ja der komplette Code, den ich in meine Form
    gepackt hatte einfach nur kopiert wird.

    Ich will aber, dass dann eine Form erstellt wird, welche von meiner Form
    abgeleitet ist, so als wenn ich eine Standard Form erstelle, nur dass diese
    nicht von TForm sondern von TMeineForm abgeleitet ist.

    Ist das moeglich?

    Danke im Voraus

    mfg
    v R



  • Dazu musst du wohl erstmal selbst eine neue Komponente von TForm ableiten.

    Aber sieh dir mal die Hilfe zum Object Repository, da gibt's z.B. einen Artikel namens "Copy, Inherit, or Use?", das hört sich doch irgendwie passend an (hab's nicht gelesen).



  • Hallo,

    ja das hab ich jetzt auch gefunden, dass ich das ja unten auswaehlen kann
    (wer lesen kann ist klar im Vorteil :()

    Jetzt hab ich aber en anderes Problem. Und zwar verhaelt sich die Form sehr
    merkwuerdig. Wenn ich Inherit auswaehle, wird eine Form so erstellt, wie ich
    sie haben will. Aber wenn ich beispielsweise ein Menue darauf erstelle, wird
    es nicht angezeigt.

    Hast du irgend eine Loesung fuer das Problem?

    Achso, zum Komponenten erstellen, kann ich denn da eine Form erstellen, die
    ich genauso auch im Repository auswaehlen kann? Hab da zwar testenshalber
    schonmal etwas erstellt gehabt (mit TForm), dann wird das in eine Palette
    meiner Wahl abgelegt, aber mehr wusst ich damit dann nicht anzufangen. Denn
    eine neue Form wurde nicht erstellt, wenn ich dann diese Komponente ausgewaehlt
    hatte.

    Oder ich vertue mich hier ganz gewalltig. Bin fuer jede Hilfe sehr dankbar.

    mfg
    v R



  • machs einfach.

    Erstelle ein Formualr, dass du als Basis nehmen möchtest.
    Speichere Das Formular in dein Repository und klicken mit der Rechten Maustaste auf das Formular. Wähle "Der Objektablage hinzufügen".

    Dann gehe auf neues Projekt und erstelle eine neue Anwendung. entferne Form1 aus dem Projekt und gehe auf Datei/neu... und wähle dein Basisformular. Wähle die option "Vererben" und klicke auf OK.

    Fertig.

    Wenn du nun Änderungen im VOrgänger-Formualr machst, werden diese Änderungen auch im Nachfolger vorgenommen. DIeses kannst du Überprüfen, indem du den Vorgänger zusätzlihc öffnest, ihn veränderst und dann speicherst.
    Die Position von Steuerelementen wird dabei nicht berücksichtigt, da diese in der *.dmf des abgeleitenten Formular gespeichert werden. Wenn du aber ein Element hinzufügst oder entfernst wirst du es feststellen.


Anmelden zum Antworten