程序要求用enter行使和tab同样的功能,下边的程序可以实现,procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if key=#13 then
  begin
    key:=#0;
    perform(wm_nextdlgctl,0,0);
  end;
end;但因为字段比较多,所以想定义为一个通用的过程或者函数;或着还有更好的方法。
各位高手,请多指教

解决方案 »

  1.   

    先定义一个过程
    procedure MyKeyPress(Sender:TObject;Var Key:Char);
    begin
      if key=#13 then
      begin
        key:=#0;
        perform(wm_nextdlgctl,0,0);
      end;
    end;
    再在程序中写
      edit1.OnKeyPress:=MyKeyPress;
      ..
    即可
      

  2.   

    1 你在form的onkeypress事件里写,然后将keypreview设true
    2 你在edit的处理里编写,然后生成新类(控件),其他edit继承之
    3 up一下楼上个人推荐 2
      

  3.   

    放入form的onkeypress,并使keypreview:=true
      

  4.   

    解决方法如下:
    TForm1.EditKeyPress(Sender: TObject; var Key: Char);
    //此处EditKeyPress不是Edit1KeyPress
    begin
      if key=#13 then
      begin
        key:=#0;
        perform(wm_nextdlgctl,0,0);
      end;
    end;然后需要此功能的TEdit的OnKeyPress事件指向此事件!
    (在Events页的OnKeyPress栏的下拉框中选择TForm1.EditKeyPress)
      

  5.   

    所有的需要此事件的控件的onkeypress都指向你其中一个已写好的Edit1KeyPress就可以了
      

  6.   

    to  NamasAmitabha(银雨辰):你的方法我用了,很好,高手果然不一样,多谢!
    to  76liujing(靖):你的方法我还没有试,不过还是谢谢你。
    对回复的各位其他高手同时表示感谢!