TEdit文本框输入限定(事件转换问题)(50分)

  • 主题发起人 七度时空
  • 开始时间

七度时空

Unregistered / Unconfirmed
GUEST, unregistred user!
2个TEdit文本框;在第一个里,输入数字之外的字符,就转入下一个文本框;怎样做?
好像大致如下:
procedure TForm1.Edit1KeyPress(Sender: TObject;
var Key: Char);

begin

if (not (key in ['0'..'9','-',#8,#13])) then

begin
{这里怎样写?}
//转入下一个,即“Edit2”;
end;
end;
 
1、如果直接让Edit2获得焦点的话
if (not (key in ['0'..'9','-',#8,#13])) then

begin
[red]Edit2.SetFocus;[/red]
end;
2、如果输入值输入到Edit2中
if (not (key in ['0'..'9','-',#8,#13])) then

begin
[red] Edit2.Text:=Edit2.Text+key;
key:=#0;[/red]
end;
不知道你所说的是不是这个意思[:D]
 
procedure TForm1.Edit1KeyPress(Sender: TObject;
var Key: Char);
begin
if (not (key in ['0'..'9','-',#8,#13])) then
self.Edit2.SetFocus;
end;
上面的就可以。
不过!我也想用控制事件OnEdit1KeyPress来解决问题。
放分!
 
顶部