edit
(1)改造Edit只允许输入数字
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9',#8]) then
begin
showmessage('输入数字');
key:=#0;
end;
end;
(2)在程序中动态创建Edit
如果想要在窗体上动态生成一个Edit,程序代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var
Ed:TEdit;
begin
ed:=TEdit.Create(Form1);
ed.Parent:=Form1;
ed.Left:=10;
ed.Top:=10;
end;
如果要在Form上的某个控件(比如Panel控件)上生成Edit,程序代码如下:
procedure TForm1.Button2Click(Sender: TObject);
var
Ed:TEdit;
begin
ed:=TEdit.Create(Panel1);
ed.Parent:=Panel1;
ed.Left:=10;
ed.Top:=10;
end;
(3)在Edit中按回车键跳到下一个控件
//首先为Edit控件的Enter事件写一个统一的处理函数ProEnter
procedure TForm1.ProEnter(Sender: TObject; var Key: Char);
begin
if Key = #13 then
begin
Key := #0;
SelectNext(ActiveControl, True, True);
end;
end;
//处理函数ProEnter写好后,直接加入Edit1与Edit2的KeyPress事件的响应函数中
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
ProEnter(Sender,Key);
end;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?