社区
Delphi
帖子详情
如何使TEdit控件显示内容靠右显示?
schcm
2007-08-02 01:43:26
如何使TEdit控件显示内容靠右显示?
...全文
254
4
打赏
收藏
如何使TEdit控件显示内容靠右显示?
如何使TEdit控件显示内容靠右显示?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
pengxuan
2007-08-02
打赏
举报
回复
unit Unit1;
interface
uses
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) //继承Tedit
procedure CreateParams(var Params: TCreateParams); override;//重载
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{ TMyEdit }
procedure TMyEdit.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.Style:=Params.Style or ES_RIGHT;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
edit1 : TmyEdit;
begin
edit1 := TmyEdit.Create(self);//生在派生类的实例
Edit1.Parent:=Form1;//使edit1可以在窗体上看见
//以下定位出现的坐标
Edit1.Left:=100;
Edit1.Top:=100;
Edit1.Width:=100;
edit1.Text := 'OK';//添加显示内容
end;
end.
iuIRCClient
2007-08-02
打赏
举报
回复
不是有text align属性么
brightyang
2007-08-02
打赏
举报
回复
当然也可以自已用createwindowex建一个
var
hEdt : Thandle;
begin
hEdt := CreateWindowEx(WS_EX_CLIENTEDGE,'Edit', 'Edit1',WS_CHILD or ES_RIGHT,100,100,
100,20,Self.handle,0,hInstance,0);
ShowWindow(hEdt,sw_normal);
end;
brightyang
2007-08-02
打赏
举报
回复
在你的程序中替换掉TEdit,如下:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TEdit = class(StdCtrls.TEdit)
private
FAlignment : TAlignment;
procedure SetAlignment(Value: TAlignment);
protected
procedure CreateParams(var Params: TCreateParams); override;
public
property Alignment: TAlignment read FAlignment write SetAlignment;
end;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TEdit.CreateParams(var Params: TCreateParams);
const
Alignments : array[TAlignment] of LongWord= (ES_Left,ES_Right, ES_Center);
begin
inherited CreateParams(Params);
Params.Style := Params.Style or Alignments[FAlignment];
end;
procedure TEdit.SetAlignment(Value: TAlignment);
begin
if FAlignment <> Value then
begin
FAlignment := Value;
RecreateWnd;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Alignment := taRightJustify;
end;
end.
DELPHI
靠右
对齐的
EDIT
通常,
EDIT
控件
默认是左对齐的,但通过调整属性和使用一些技巧,我们可以让
EDIT
控件
的
内容
在
显示
时
靠右
对齐。 首先,我们需要了解
EDIT
控件
的基本属性。
EDIT
控件
是Delphi中的T
Edit
组件,它继承自TCustom
Edit
,用于...
Delphi 详细教程 文字版04
此外,文本编辑器的其他功能,如打开、编辑、保存文件,查找和替换字符串,复制、粘贴和剪切操作,设置字体大小,以及打印文件,都可以通过Delphi提供的标准
控件
如TMemo(用于
显示
和编辑多行文本)和T
Edit
(用于单行...
Delphi中如何让T
Edit
编辑框
控件
从右边开始输入数据呢?
如何使编辑框从右边进行录入数据? 首先: type TRight
Edit
= class(T
Edit
) protected procedure CreateParams(var Params:TCreateParams);override; end; 声明一个全局的变量: edt2 : TRight
Edit
; ...
在DELPHI中使T
Edit
的
内容
可以居中或右对齐
SetWindowLong(
Edit
1.Handle, GWL_STYLE, GetWindowLong(
Edit
1.Handle, GWL_STYLE) or ES_CENTER);
Edit
1.Invalidate; //如果右对齐,将ES_CENTER变成ES_RIGHT
将T
Edit
设置为右对齐
SetWindowLong(
Edit
1.Handle,GWL_STYLE,GetWindowLong(
Edit
1.Handle,GWL_STYLE) or Es_right);
Delphi
5,930
社区成员
262,938
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章