举例如下:
Tform1.Form1keypress(sendr:Tobject;var key:char);
begin
if key=#13 then
begin
key:=#0;
perform(wm_nextDLGCTL,0,0);
end;
end;
Tform1.Form1keypress(sendr:Tobject;var key:char);
begin
if key=#13 then
begin
key:=#0;
perform(wm_nextDLGCTL,0,0);
end;
end;
begin
if key=#13 then
begin
key:=#0;
Perform(WM_NEXTDLGCTL,0,0);
end;
end;
begin
if key=#13 then
begin
key:=#0;
selectnext(ActiveControl,True,True);
end;
end;
begin
if key=#13 then
begin
nextcontrol.setfocus;
end;
end;2、procedure TForm1.FormKeydown(Sender: TObject; var Key: Char);
begin
if key=13 then
begin
nextcontrol.setfocus;
end;
end;
delphi支持的很好呀,设置TabOrder, TabStop属性就行。 如果你想同时把 Enter件改成Tab件则这样:form's PRIVATE 部分定义消息过程
Procedure CMDialogKey(Var Msg:TWMKey); message CM_DIALOGKEY; 实现部分:
procedure TForm1.CMDialogKey(var Msg: TWMKey);
begin
if Msg.Charcode = 13 then Msg.Charcode := 9;
inherited;
end;
另外你可以选择跳转的控件
Procedure TForm1.CMDialogKey(Var Msg: TWMKey);
Begin
If ActiveControl Is TButton Then
If Msg.Charcode = 13 Then
Msg.Charcode := 9;
inherited;
End; 行了。
procedure TForm1.Edit1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if key=VK_return then
edit2.SetFocus ;
end;
procedure TFm_program_info.FormKeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then
begin
key:=#9;
selectnext(Activecontrol,true,true);
end;
end;