關於EDIT控件的小問題(50分)

  • 主题发起人 主题发起人 Teikini
  • 开始时间 开始时间
T

Teikini

Unregistered / Unconfirmed
GUEST, unregistred user!
在EDIT中輸入時﹐一般都靠左顯示﹐怎樣靠右顯示。
謝謝各位大蝦。
 
Edit.Align属性是否能行?
 
有一个SEdit控件有多种对齐方式。
去vcl.vclxx.com找一下
 
只要重载一下createparams就可以了,very easy
unit rightedit;

interface

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

type
Trightedit = class(Tcustomedit)
private
{ Private declarations }
protected
{ Protected declarations }
public
{ Public declarations }
procedure CreateParams(var Params: TCreateParams); override;
published
{ Published declarations }
end;

procedure Register;

implementation

procedure Register;
begin
RegisterComponents('hubdog lib', [Trightedit]);
end;

procedure TRightEdit.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.ExStyle:=Params.ExStyle or WS_EX_RIGHT;
end;

end.
 
呵呵, 有没有不用重建构件的方法:-)
 
除了重構或第三方控件﹐還有其他嗎﹖
大家輸入數值時是怎樣靠右顯示的﹖
 
嘿嘿,我从来没靠右显示过,不习惯.
 
setwindowlong(edit.handle, GWL_STYLE,getwindowlong(edit.handle) or ES_MULTILINE or ES_RIGHT);
 
sorry:
setwindowlong(edit.handle, GWL_STYLE,getwindowlong(edit.handle,GWL_STYLE) or ES_MULTILINE or ES_RIGHT);
 
嗯? 怎么不行?:-(
 
在Tdbedit中当是数值是,靠右顯示.
但tedit中,代试.
 
hubdogde 的方法當然可以﹐以後有分。

Another_eYes的方法好象只是光標置在文本的右﹐
我要的是整個文本從右邊出來﹐
要不可以用TRichEdit代替(TRichEdit可以)。

我再等等。

 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部