如题.

解决方案 »

  1.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        procedure Button1Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;  TMyEdit = class(TEdit)
       private
          procedure CreateParams(var Params: TCreateParams);override;
      end;
    var
      Form1: TForm1;implementation{$R *.dfm}
    procedure TMyEdit.CreateParams(var Params: TCreateParams);
    begin
      inherited;
      Params.Style:=Params.Style or ES_RIGHT;
    end;procedure TForm1.Button1Click(Sender: TObject);
    var MyEdit:TMyEdit;
    begin
      MyEdit:=TMyEdit.Create(self);
      MyEdit.Text:='abcde';
      MyEdit.Parent:=Form1;
      MyEdit.Show;
    end;end.
      

  2.   

    用TMemo,然后不允许回车换行。
    procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
    begin
      if key=#13 then key:=#0;
    end;
      

  3.   

    {**
    * 单元:FloatEdit
    * 作者:网事如风
    * 作用:可以设置对齐方式的Edit
    * 使用:
    **}unit RightEdit;interfaceuses
      Windows, Messages, SysUtils, Classes, Controls, StdCtrls;type
      TRightEdit = class(TEdit)
      private
        FAlignment: TAlignment; //对齐方式
        procedure SetAlignment(Value: TAlignment);
      protected
        procedure CreateParams(var Params: TCreateParams); override;
      public
        { Public declarations }
      published
        property Alignment: TAlignment read FAlignment write SetAlignment;
      end;procedure Register;implementationprocedure Register;
    begin
      RegisterComponents('MyCompent', [TRightEdit]);
    end;
    procedure TRightEdit.CreateParams(var Params: TCreateParams);
    begin
      inherited CreateParams(Params);
      case FAlignment of
        taLeftJustify: Params.Style := Params.Style + ES_LEFT;
        taRightJustify: Params.Style := Params.Style + ES_RIGHT;
        taCenter: Params.Style := Params.Style + ES_CENTER;
      end;
    end;procedure TRightEdit.SetAlignment(Value: TAlignment);
    begin
      if FAlignment <> Value then
      begin
        FAlignment := Value;
        RecreateWnd;
      end;
    end;end.