怎样让TEdit中的文字中间对齐或右对齐?
解决方案 »
- 修改Delphi7的源代码后,怎么才能让它生效
- 在Canvas上画长方形的问题?
- 一个采用DCOM的三层系统的问题?在线等!!!!!!!!~~~~~~~~~~~~~~~~~~~
- 【地址报错问题】
- 马上结!!!
- 急!小弟今接到经理一任务,要求小弟用Delphi做一个能将图片与音乐合成Mpeg软件,小弟没了头绪,求各位大侠帮帮忙,哪怕是一个函数!
- 在ACCESS里面怎样设置存储过程
- 在线程中动态创建ADOConnection为何报错??请各位大哥多多指点???!!!
- 请推荐一个好一点的类似outlook的控件,急用。。。先谢了。。。
- 调用DLL中MDIChild的难题解决了,更大的难题又来了。
- 关于Active Form ?
- delphi菜鸟入门书籍。。。
覆盖 TEdit的createparams方法(实际为覆盖TWinControl的CreateParams方法)
type
TREdit=class(tedit)
protected
procedure createparams(var Params: TCreateParams);override;
end;procedure TREdit.createparams(var Params: TCreateParams);
begin
inherited;
Params.Style:=Params.Style or ES_RIGHT;
end;
换为 : Params.Style:=Params.Style or ES_CENTER ;
unit EditType;interfaceuses
Windows, Messages, SysUtils, Classes, Controls, StdCtrls;type
TEditType = class(TCustomEdit)
private
FAlignment:TAlignment;
protected
procedure CreateParams(var Params: TCreateParams); override;
public
Procedure SetAlignment(const value:TAlignment);
published
property Alignment : TAlignment read FAlignment write SetAlignment default taLeftJustify;
property Anchors;
property AutoSelect;
property AutoSize;
property BevelEdges;
property BevelInner;
property BevelKind default bkNone;
property BevelOuter;
property BiDiMode;
property BorderStyle;
property CharCase;
property Color;
property Constraints;
property Ctl3D;
property DragCursor;
property DragKind;
property DragMode;
property Enabled;
property Font;
property HideSelection;
property ImeMode;
property ImeName;
property MaxLength;
property OEMConvert;
property ParentBiDiMode;
property ParentColor;
property ParentCtl3D;
property ParentFont;
property ParentShowHint;
property PasswordChar;
property PopupMenu;
property ReadOnly;
property ShowHint;
property TabOrder;
property TabStop;
property Text;
property Visible;
property OnChange;
property OnClick;
property OnContextPopup;
property OnDblClick;
property OnDragDrop;
property OnDragOver;
property OnEndDock;
property OnEndDrag;
property OnEnter;
property OnExit;
property OnKeyDown;
property OnKeyPress;
property OnKeyUp;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnStartDock;
property OnStartDrag;
end;
procedure Register;implementationprocedure Register;
begin
RegisterComponents('CzqTools', [TEditType]);
end;procedure TEditType.CreateParams(var Params:TCreateParams);
const
Alignments: array[TAlignment] of DWORD =(ES_LEFT, ES_RIGHT, ES_CENTER);
begin
inherited CreateParams(Params);
params.Style:=params.Style or Alignments[FAlignment];
end;
procedure TEditType.SetAlignment(const value:TAlignment);
begin
if FAlignment <> Value then
begin
FAlignment := Value;
RecreateWnd;
end;
end;end.
TREdit=class(TEdit)
protected
procedure createparams(var Params: TCreateParams);override;
end;
TForm1 = class(TForm)
...
end;var
Form1: TForm1;
implementation
{$R *.dfm}procedure TREdit.createparams(var Params: TCreateParams);
begin
inherited;
Params.Style:=Params.Style or ES_RIGHT ; //右对齐
//Params.Style:=Params.Style or ES_CENTER ; //中对齐
end;procedure TForm1.FormCreate(Sender: TObject);
begin
with TREdit.Create(application) do
begin
name := 'myedit' ;
Caption := 'Right/Center' ;
left:=100;
top:=100;
Height := 100 ;
Width := 100 ;
parent:=Form1;
visible:=true;
end;
end;
原来是我没有和设parent