菜鸟提问,关于回车的问题,请大家一定帮帮我,(50分)

  • 主题发起人 3897113blueappl
  • 开始时间
3

3897113blueappl

Unregistered / Unconfirmed
GUEST, unregistred user!
我想让edit1.text 内容输入完以后,按一下回车光标依次跑到edit2.text框内,依次类推
edit3.text ,edit4.text,edit5,text 等等,请大家帮帮我,谢谢,
 
把 form的keypreview属性设为true
并在form的keydown事件中写
if key=13 then selectnext(activecontrol,true,true);
当然你的各个edit的taborder 要先设置好
 
在所有Edit中的OnKeyDown事件中
if Key = VK_RETURN then
PostMessage(Handle, WM_KEYDOWN, VK_TAB, 0)
 
笨办法: [:)]
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then
Edit2.SetFocus;
end;
 

这种问题很热门哦!
类似 雪中漫步

perform(WM_NEXTDLGCTL,0,0);
 
设置好各个TEdit.TabOrder顺序
然后在其中一个TEdit响应KeyDown事件
if(Key=VK_RETURN) then
SelectNext(Sender as TWinControl,true,true);

然后在其他TEdit的KeyDown实践中直接引用上面的那个事件,注意不要重写,也不要复制
指向它就可以了
如果使用KeyPreview这个方法可能碰到TRichEdit,TMemo就不好处理了,因为一回车跑到
别的地方去了,本来想换行
 
雪中漫步 的做法就可以啦
 
用DosMove控件
楼上说的不支持光标键
Delphi园地有下载
http://mydelphi.8u8.com
 
在keydown事件中
if Key = VK_RETURN
self.SelectNext(TEdit(Sender),true,true);
 
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key = 13 then edit2.SetFocus;
end;
 
上面的方法都不可以實現,
我也正遇到這樣的問題,請高手們幫忙啊!!
 
顶部