一个初级问题:在录入界面中如何使用enter键切换到下一个控件?(50分)

  • 主题发起人 主题发起人 zzz2001
  • 开始时间 开始时间
Z

zzz2001

Unregistered / Unconfirmed
GUEST, unregistred user!
默认状态下是用tab键切换
如何使用enter键切换?
 
遇到问题先检索以下
 
在 keydown或keypress中
case key of
13:edit.setfoucs;
end;
 
在 onkeypress
if key = #13 then
begin 
  key:=#0;
  perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
end;
 
在控件的 OnKeyDown 事件里面:
if Key=13 then
PostMessage(Handle, WM_KEYDOWN, VK_TAB, 0);
 
如果是切換焦點的話
就在form的keypress中
if key=#13 then
begin
key:=#0;
postmessage(handle,wm_nextdlgctl,0,0);
end;

但如果你是指的想輸入數據的話
就在最後那個輸入控件的onkeypress中做輸入處理就好了
 
FINDNEXTCONTROL
 
多谢各位
comfan2001的方法最合我意
qingzhong教我找到了正确的答案
所以以上二位分数高一点
另外,还要将Form的KeyPreview属性设为True才是完美答案
 
后退
顶部