Einzelnen Beitrag anzeigen

Benutzerbild von Ookami
Ookami

Registriert seit: 20. Nov 2009
Ort: Baden Württemberg
77 Beiträge
 
Delphi 2009 Architect
 
#1

Positionsaktualisierung von Komponenten wie z.B. TEdit

  Alt 9. Apr 2010, 14:25
Hallo zusammen und speziell an diejenigen, die selbst VCL-Komponenten entwickeln.

Ich tue mir noch schwer, mit der Entwicklung von Komponenten im Allgemeinen. Habe aber inzwischen eine Lektüre gefunden, die mir das Thema einigermaßen verständlich machte.
Jetzt im Moment kämpfe ich noch mit mehreren Problemen herum, wie z.B. einen Font einbinden, usw.
Aber die Frage, die mich im Moment beschäftigt ist die, dass ich mich wundere, dass die Position der Komponente sich beim verschieben nicht ändert. Also genauer gesagt die Positionsangaben wie .Left, .Top und so weiter.
Bei Komponenten wie TEdit, TLabel und den anderen geht das ja automatisch.

Delphi-Quellcode:
type
  TTitleRect = class(TControl)
    Canvas: TCanvas;
    FFont: TFont;
  private
    { Private-Deklarationen }
    FFrameStyle: TFrameStyle;
    FLeft: Integer;
    FWidth: Integer;
    FTop: Integer;
    FHeight: Integer;
    FFrWidth: Integer;
    FTitle: String;
    FBkColor: TColor;
    FFtColor: TColor;
    FFrColor: TColor;
    FShowFrame: Boolean;
    Procedure SetLeft (Value: Integer);
    Function GetLeft : Integer;
  protected
    { Protected-Deklarationen }
    Rect: TRect;
  public
    { Public-Deklarationen }
    Constructor Create (aOwner: TComponent); override;
    Destructor Destroy; override;
    Procedure Draw;
  published
    { Published-Deklarationen }
    property Left: Integer Read FLeft Write FLeft;
    property Width: Integer Read FWidth Write FWidth;
    property Top: Integer Read FTop Write FTop;
    property Height: Integer Read FHeight Write FHeight;
    property FrWidth: Integer Read FFrWidth Write FFrWidth;
    property Font: TFont Read FFont Write FFont;
    property Title: String Read FTitle Write FTitle;
    property BkColor: TColor Write FBkColor;
    property FtColor: TColor Write FFtColor;
    property FrColor: TColor Write FFrColor;
    property ShowFrame: Boolean Write FShowFrame;
    property onClick;
    property onDblClick;
    property onMouseDown;
    property onMouseMove;
    property onMouseUp;
  end;
Es ist nichts besonderes, im eigentlichen Sinne noch weniger als ein TPanel. Es geht mir hier auch einfach nur um das Verständnis.

Gruß an Alle
Wolfgang
Wolfgang
  Mit Zitat antworten Zitat