Einzelnen Beitrag anzeigen

gfjs

Registriert seit: 8. Dez 2005
Ort: Hohenkammer
298 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Problem mit Zugriff auf Property

  Alt 26. Sep 2006, 09:30
Erstmal vielen Dank für Eure Beteiligung. Leider ist mir folgendes noch nicht klar:

1. Der Designer hat mir bei einer anderen Eigenschaft den Getter und Setter (für FDiologTextSize) in den Public-Bereich geschrieben, deshalb habe ich es - entgegen meiner Überzeugung - auch so gemacht. So sieht meine komplette Typ-Deklaration aus:
Delphi-Quellcode:
type
  StringEdit = class(System.Windows.Forms.TextBox)
  {$REGION 'Vom Designer verwalteter Code'}
  strict private
    /// <summary>
    /// Erforderliche Designervariable.
    /// </summary>
    components: System.ComponentModel.IContainer;
    Timer1: System.Windows.Forms.Timer;
    /// <summary>
    /// Erforderliche Methode zur Unterstützung des Designers -
    /// ändern Sie die Methode nicht mit dem Quelltext-Editor
    /// </summary>
    procedure InitializeComponent;
    procedure StringEdit_MouseEnter(sender: System.Object; e: System.EventArgs);
    procedure StringEdit_Enter(sender: System.Object; e: System.EventArgs);
  {$ENDREGION}
  strict protected
    /// <summary>
    /// Ressourcen nach der Verwendung bereinigen
    /// </summary>
    procedure Dispose(Disposing: Boolean); override;
  private
    { Private-Deklarationen }
    FHintDelay : integer;
    FDialogTextSize: System.Double;
    FDefText : string;
    FDialogVisible : boolean;
    function getFDefText: System.string;
    procedure setFDefText(Value: System.string);
  public
    constructor Create;
    function get_DialogTextSize: System.Double;
    procedure set_DialogTextSize(Value: System.Double);
  published
    property HintDelay : integer read FHintDelay write FHintDelay default 1000;
    property DialogTextSize: System.Double read get_DialogTextSize write set_DialogTextSize;
    [DefaultValue('DefText')]
    property DefText : string read getFDefText write setFDefText;
    property DialogVisible : boolean
             read FDialogVisible write FDialogVisible default true;
  end;
2. Das mit dem Instanziieren ist mir an dieser Stelle nicht so ganz klar. Es handelt sich hier um die Unit uStringEdit, in der die (künftige) selbstentwickelte Komponente StringEdit enthalten ist. In dem Programm, in dem ich die Komponente verwende sieht es dann so aus:
Delphi-Quellcode:
type
  aTextBox = StringEdit;
var
  MyTextBox : aTextBox;
....
constructor MyForm.Create;
begin
  MyTextBox := aTextBox.Create;
  ....
end;
Muss ich denn hier noch einmal eine Instanz erzeugen? Ich kann ja z.B. in "StringEdit.StringEdit_Enter" auf die Eigenschalften von StringEdit zugreifen. Allerdings gelingt es nicht aus einer Methode, die zu einem zur Laufzeit erzeugten Dialog gehört.

Wie Ihr seht, bin ich ziemlich ratlos. Vielleicht lichtet sich mit Eurer Hilfe der Schleier ein wenig?!

Gruß Jürgen.
Mein neues Motto (von "Unbekannt"):
Gewinnen: Wenn Du kannst - Verlieren: Wenn Du musst - Aufgeben: NIE!
  Mit Zitat antworten Zitat