2009-05-26 12 views
5

Ich versuche, eine benutzerdefinierte Eigenschaft zu einem Basisformular hinzuzufügen, auf das über den Delphi-Eigenschaftseditor zugegriffen werden kann. Wenn ich die Eigenschaft einfach wie bei einer Standardkomponente hinzufüge, wird die Eigenschaft nicht im Eigenschafteneditor angezeigt. Hier ist, was ich versucht habe:Wie füge ich benutzerdefinierte Eigenschaften zu einem Formular hinzu

unit TestForm; 

interface 

uses 
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
    Dialogs; 

type 
    TfrmEasyIPBase = class(TForm) 
    private 
    FTest: String; 
    public 
    { Public declarations } 
    published 
    property Test: String read FTest write FTest; 
    end; 

var 
    frmEasyIPBase: TfrmEasyIPBase; 

implementation 

{$R *.dfm} 

end. 

Muss ich die Eigenschaft an einem bestimmten Punkt registrieren?

Antwort

4

RegisterCustomModule sollte den Trick machen.

+0

Dies hat den Trick. Der Artikel ist detailliert, aber der einzige Teil, den ich wirklich brauchte, war RegisterCustomModule. Ich habe einfach "RegisterCustomModule (TfrmEasyIPBase, TCustomModule)" hinzugefügt; zu meiner Registriereinheit und alles funktioniert jetzt perfekt :) – norgepaul

0

Ich habe keinen Zugriff auf delphi jetzt aber versuchen Sie Ihr TForm Diskant zu Ihrem Projekt hinzufügen, neue Form hinzufügen, bearbeiten Sie die pas-Datei der neuen Form, so dass es wie

TMyNewForm = Class(TfrmEasyIPBase) 

auch bearbeiten MyNewForm des DFM aussehen Datei - Änderung object MyNewForm zu inherit MyNewForm

Verwandte Themen