如何能像输入软件的序列号一样在edit框中只要输入正确焦点就能自动进入下一个edit框(100分)

  • 主题发起人 chonglang
  • 开始时间
C

chonglang

Unregistered / Unconfirmed
GUEST, unregistred user!
如何能像输入软件的序列号一样在edit框中只要输入正确焦点就能自动进入下一个edit框??
 
你可以事先定义输入字符的位数,然后在Edit的 onKeyUp 或者是 onKeyDown 事件中检测
一下 如:
procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Length(Edit1.Text) = ConstNUM then //ConstNUM 为事先定义好的位数
Edit2.SetFocus ;
end;
 
假如是XXXXX-XXXXX-XXXXX-XXXXX
比方是第一框,在ONCHANGE中,如果length(text)=5就让第二框自动得到焦点就可以了。
可以用setfouce方法。
 
迟一步,7456!
 
在 Edit1 的OnChange方法中添加以下语句
if Edit1.Text = '正确的注册码' then
begin
Edit2.SetFouce;
end;
 
没机会了!
onchange事件里判断已输入字符串的长度,如果达到最大的话则下一个控件onfocus
 
onchange里如果判断
输入正确就
就出发一次tab
 
判断,然后下移就可以了
下移的方法有:
selectnext(activecontrol,true,true)
postmessage(activecontrol.handle,wm_keydown,Vk_tab,0)
 
谢谢各位,以后请多关照。
 
顶部