Thema: Delphi TControl (TEdit...) ?

Einzelnen Beitrag anzeigen

Benutzerbild von scrat1979
scrat1979

Registriert seit: 12. Jan 2007
Ort: Sulzbach a.d. Murr
1.028 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: TControl (TEdit...) ?

  Alt 11. Aug 2007, 13:24
Hmmmm, also hast Du die Komponente schon in der Tool-Palette? Wenn Du diese in der Form plazierst, müsste im OI eine Eigenschaft "TextAlignment" stehen. Hier kannst Du dann das entsprechende auswählen.

Im Quellcode müsste folgendes gehen:

MonEdit.TextAlignment := taRightJustify; Habe auch mal eine eigene Edit-Komponente abgeleitet. Habe Dir mal das wichtigste rauskopiert, hoffe diese lässt sich compilieren und in die Tool-Palette integrieren... Ist Deinem Beispiel nach dem kürzen sehr ähnlich.

Delphi-Quellcode:
unit AdvEdit;

interface

uses
  SysUtils, Classes, Controls, StdCtrls, Graphics, Messages, Windows, Forms;

type
  TAdvEdit = class(TEdit)
  private
    { Private-Deklarationen }
    FAlignment : TAlignment;

    procedure SetAlignment(const Value: TAlignment);

  protected
    procedure CreateParams(var Params: TCreateParams); override;

  public
    { Public-Deklarationen }
    constructor Create(AOwner : TComponent); override;

  published
    { Published-Deklarationen }
    property Alignment : TAlignment read FAlignment write SetAlignment;
  end;

procedure Register;

implementation

constructor TAdvEdit.Create(AOwner : TComponent);
Begin
  inherited Create(AOwner);

  Alignment := taLeftJustify;
End;

procedure TAdvEdit.CreateParams(var Params: TCreateParams);
const
  Alignments: array[TAlignment] of DWORD = (ES_LEFT, ES_RIGHT, ES_CENTER);
begin
  inherited CreateParams(Params);

  with Params do
    Style := Style or Alignments[FAlignment];
end;

procedure TAdvEdit.SetAlignment(const Value: TAlignment);
begin
  if FAlignment <> Value then
  begin
    FAlignment := Value;
    RecreateWnd;
  end;
end; (*SetAlignment*)

procedure Register;
begin
  RegisterComponents('Michael Kübler', [TAdvEdit]);
end;

end.
Viel Spaß,

Michael
Michael Kübler
  Mit Zitat antworten Zitat