导航:
论坛 -> DELPHI技术
斑竹:liumazi,sephil
作者:
2004/4/30 23:35:46
标题:
加入我的收藏
楼主:
如果一个窗体上有很多的edit输入框,我要在输入内容后按回车键,焦点自动移到 下一个edit上,而不是botton上, 我在窗体的onkeypress事件添加如下代码?为什么不行,请指教 if key=#13 then begin key:=#0; perform(.....,0); end;
----------------------------------------------
-
作者:
cnxxx (我本高手)
★☆☆☆☆
-
盒子活跃会员
2004/5/1 0:13:29
1楼:
全文检索,回答过N次了。
----------------------------------------------
黑夜中,一眼望去,我就是高手。
作者:
2004/5/1 0:43:49
2楼:
if key=#13 then begin key:=#0; perform(WM_NEXTDLGCTL,0,0); end; 我是这样子写的啊?可是运行时不起作用?为什么? 不好意思,请指教,谢谢了!
----------------------------------------------
-
作者:
2004/5/1 7:06:47
3楼:
if key=#13 then begin key:=#0; edit2.setfocus; end;
----------------------------------------------
-相互学习,共同进步!
作者:
2004/5/1 8:42:08
4楼:
看来你是新手,xiaojun5460提供的代码要写在edit组件的Onkeypress事件中,下面是我提供的代码,要写在OnKeyDown事件中,此段代码不仅移到下一个组件上,而且按向右方向键,可使焦点移到上一个组件.不仅如此,在这个事件中你还可干很多事件,比如,用户在edit1中没有输入数据,就按了换行键,可以给出一个提示框,并让光标继续停留在edit1中.还有,根据edit1中值,给edit4指定一个值.等等,你要知道事件驱动的含义.下雨是事件,当下雨发生之后,你要去干什么,那完全由你安排,如钓鱼,赌博,嫖娼等等,但有些事也不适宜下雨的时候干,如光着头站在雨中.编程中的事件和下雨事件差不多,也有能干和不能干的事. 主要是过程名后括号中的参数的影响. procedure Tfrmmzfydl.Edit12KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin case key of VK_return,VK_right:edit3.SetFocus; VK_left: edit1.SetFocus; end; end;
----------------------------------------------
-
作者:
2004/5/1 10:50:08
5楼:
同意三楼! 支持四楼!
----------------------------------------------
-
作者:
2004/5/2 12:51:40
6楼:
楼主,你的TAB排序是不是有问题啊?edit1下面是不是button啊?
----------------------------------------------
Delphi天堂(QQ群):3701818 欢迎您的加入!
作者:
2004/5/2 13:57:38
7楼:
学习中.
----------------------------------------------
wang