需要用回车键代替TAB键下移一个控件时,把KeyPress设为True,加入下列代码拦截击键:
Procedure TForm1.FormKeyPress(Sender:Tobject;Var Key:Char);
Begin
 if key=#13 then { 判断是按执行键}
 Begin 
  key:=#0;
  perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
 end
end;

解决方案 »

  1.   

    SelectNext(ActiveControl,True,True); 也可以实现你要的功能
      

  2.   

    设置TabOrder的顺序就可以按TAB键在控件间切换焦点
      

  3.   

    实在不好意思,当我运行的时候九报错,如下:
    Procedure TForm1.FormKeyPress(Sender:Tobject;Var Key:Char);
    Begin
     if key=#13 then { 判断是按执行键} 
      //[Error]:lllegal character in input file:' '[$A1A1]     
     Begin 
      key:=#0;
      perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
     end
    end;
      

  4.   

    不过可要注意Memo、DBMemo、DBGrid等控件哦
      

  5.   

    在keypress中不会报这种错的,你可能是放过keydown事件中去了
    还有,你必须设置form的keypreview为true,这段代码才能起作用