Announcement

Collapse
No announcement yet.

Eigene Formular-Propertys

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Eigene Formular-Propertys

    Hallo Leute !

    Weiß jemand von euch auf die schnelle, wie ich ein
    Formular um eigene Propertys und Events erweitern
    und diese innerhalb Delphi im Objectinspector einstellen kann ??

    Danke.

    Adi

  • #2
    Hallo,

    wenn die eigenen Formular-Properties <b>nicht</b> im Objektinspektor auftauchen müssen, reicht die normale Deklaration in den Projektdateien aus. Der Zugriff ist dann zur Laufzeit (also im eigenen Soucecode) möglich.
    Sollen die Eigenschaften im Objektinspektor erscheinen, müssen zur Entwicklungszeit die <b>RTTI</b> (Run Time Type Information) zur Verfügung stehen. Normalerweise wird dazu ein Nachfolger von TForm abgeleitet und registriert

    Comment


    • #3
      Mich würde dies auch interessieren!

      Ich habe zwar eine Form von TForm abgeleitet, jedoch bekomme ich es nicht registriert hin. Wenn ich es "registriere" kann ich meine Ableitung immer nur als Kopier-Vorlage benutzen

      Comment


      • #4
        >> Wenn ich es "registriere" kann ich meine Ableitung immer nur als >> Kopier-Vorlage benutzen!

        genau das ist auch mein problem. "normale" komponenten kann man ja
        einfach via "REGISTERCOMPONENTS" alle nötigen informationen an delphi übergeben. nur weiß ich nicht, wie das mit einem formular funktionieren soll.

        ad

        Comment


        • #5
          Hi Jungs

          leitet zuerst Eure neu Formularklasse ab, fügt dann als published die neuen Properties ein. Schreibt eine Register procedure nach folgendem Schema:

          <pre>

          type
          TMyForm = class(TForm)
          published
          proeprty XYZ;
          end;

          procedure Register;

          implementation

          procedure Register;
          begin
          RegisterCustomModule(TMyForm, TCustomModule);
          end;

          end.

          </pre>

          Nun noch als Komponente diese Unit installieren.
          Ihr ezeugt ein neues Formular, ändert im Quelltext

          <pre>

          type
          TForm1 = class(TForm)

          in

          TForm1 = class(TMyForm)

          </pre>

          um, speichern und neu laden, und schon ist Property XYZ im Objectinspector sichtbar. All dies funktioniert ab Delphi 3, glaub ich.

          Übrigens lassen sich auch mit RegisterLibraryExpert() Experten für TmyForm registrieren, diese können dann die leidige Vorgehensweise beim Neuanlegen eines TMyForm's automatisieren. Im Grunde genommen funktionierts dann wie mit TDataModule's.

          Gruß Hage

          Comment

          Working...
          X