Einzelnen Beitrag anzeigen

ketraun
(Gast)

n/a Beiträge
 

Tmaskeditfeld und Tedit Text ausrichten

  Alt 11. Aug 2003, 12:28
Des öfteren ist es nötig ein Editfeld rechstbündig oder zentriert darzustellen!
hier ist eine funktionierende Komponente mit der man den Text in Tmaskedit ausrichten kann. Wer tedit benutzen will muss nur tmaskedit durch Tedit ersetzen. Im Anhang befindet sich die unit zum download.

Delphi-Quellcode:
unit maskeditL;

interface

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

type
  TmaskeditL = class(Tmaskedit)
  private
  { Private-Deklarationen } 
  fAlignment : TAlignment;
  protected
  { Protected-Deklarationen } 
  public
  { Public-Deklarationen } 
  procedure SetAlignment(const Value: TAlignment);
  procedure CreateParams(var Params: TCreateParams);override;
  published
  { Published-Deklarationen } 
  property Alignment : TAlignment read fAlignment write SetAlignment;
end;

procedure Register;

implementation

procedure TmaskEditL.SetAlignment(const Value: TAlignment);
begin
  if Value <> fAlignment then
  begin
    fAlignment := Value;
    RecreateWnd; // erzeuge Fenster neu -> CreateParams
  end;
end;

procedure TmaskEditL.CreateParams(var Params: TCreateParams);
const cAlignStyles: array [TAlignment] of Cardinal = (ES_LEFT, ES_RIGHT, ES_CENTER);
begin
  inherited;
  with Params do
    Style := Style or cAlignStyles[fAlignment];//taRightJustify];
end;

procedure Register;
begin
  RegisterComponents('Zusätzlich', [TmaskeditL]);
end;
[edit=Daniel B]Delphi-Tags eingefügt. Mfg, Daniel B[/edit]
[edit=Matze]Code formatiert. Mfg, Matze[/edit]
Angehängte Dateien
Dateityp: pas maskeditl.pas (1,2 KB, 163x aufgerufen)
  Mit Zitat antworten Zitat