如何讓光標停靠在maskedit框的右邊? 如何讓在光標停靠在maskedit框的右邊且輸入的內容也從右向左顯示。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 MaskEdit1.AutoSelected := True;MaskEdit1.SelStart := 6; //视你的MaskEdit1的Mask长度而定,这里就是把光标定在第6位。 基本思路就是重载MaskEdit的CreateParams函数,将MaskEdit的窗口风格改为右对齐,以下代码实现了这种效果,并且不需要动态生成MaskEdit。unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Mask;type TMaskEdit = class(Mask.TMaskEdit) protected procedure CreateParams(var Params: TCreateParams); override; end; TForm1 = class(TForm) MaskEdit1: TMaskEdit; private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementationprocedure TMaskEdit.CreateParams(var Params: TCreateParams);begin inherited CreateParams(Params); Params.Style := Params.Style or ES_RIGHT;end;{$R *.dfm}end. var FHandle: THandle;begin FHandle := MaskEdit1.Handle; SetWindowLong(FHandle, GWL_EXSTYLE, GetWindowLong(FHandle, GWL_EXSTYLE) + WS_EX_RIGHT)end; vb改成delphi U盘读写识别代码,就当锻炼你的技术,感谢 菜鸟问题 关于获得硬盘序列号的问题,请各位大虾帮忙看一下 简单的问题。过来看看 怎样得到外部应用程序的句柄 那位大侠可以提供LED显示开发方面的资料或程序 关于clientdataset(在线等待) 这个是定义的什么?(TCardNumber = packed record),常量?结构?数组?…… 新手问题,ClientDataSet 多记录提交!? 如何将数据库表中的一字段的信息显示在下拉菜单中。 100分!!我的新网站www.pcask.cn现测试中,回者给分
MaskEdit1.SelStart := 6; //视你的MaskEdit1的Mask长度而定,这里就是把光标定在第6位。
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask;type
TMaskEdit = class(Mask.TMaskEdit)
protected
procedure CreateParams(var Params: TCreateParams); override;
end; TForm1 = class(TForm)
MaskEdit1: TMaskEdit;
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementationprocedure TMaskEdit.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.Style := Params.Style or ES_RIGHT;
end;{$R *.dfm}end.
FHandle: THandle;
begin
FHandle := MaskEdit1.Handle;
SetWindowLong(FHandle, GWL_EXSTYLE, GetWindowLong(FHandle, GWL_EXSTYLE) + WS_EX_RIGHT)
end;