主题:求一个小功能。
kingingr
[专家分:1480] 发布于 2006-08-06 00:21:00
如何把TAB键的功能转移到ENTER上?
按回车键光标(焦点)转移到下一个控件上。
回复列表 (共7个回复)
沙发
ooooh [专家分:60] 发布于 2006-08-06 01:02:00
网上搜索下,有很多方法
板凳
triumph [专家分:160] 发布于 2006-08-06 08:05:00
edit的onkeypress事件
if key=#13 then edit1.setfocus;
3 楼
kingingr [专家分:1480] 发布于 2006-08-06 09:49:00
to triumph
你这个功能不完整。
FORM中有若干个EDIT,按TAB键可以自由在里面切换焦点。
现在我想把这个功能移植到ENTER键上。
4 楼
triumph [专家分:160] 发布于 2006-08-06 10:25:00
这个你再试试
procedure tform1.findcontrol;
begin
if findnextcontrol(activecontrol,true,false,false)is tedit then
tedit(findnextcontrol(activecontrol,true,false,false)).setfocus;
end;
5 楼
kingingr [专家分:1480] 发布于 2006-08-06 10:28:00
to triumph
帮忙把你的这个代码解释一下。
to all
已经找到了一个厉害的代码。不过还要请高手来解释一下代码。
if Key=#13 then
SendMessage(self.Handle,WM_NEXTDLGCTL,0,0);
哪位高手解释一下这个。
6 楼
kingingr [专家分:1480] 发布于 2006-08-07 18:45:00
怎么没人气了啊?
7 楼
dodolon [专家分:400] 发布于 2006-08-11 02:06:00
以前就回答过这样的问题,再贴出来:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then KeyBD_Event(9,0,0,0);
end;
然后将所有控件的OnKeyPress事件指向TForm1.Edit1KeyPress事件过程,不要为每个控件都写一个同样的事件过程。
我来回复