下面的程序可以实现Enter把光标移动到下一个Edit
if Key=#13 then { 判断是按执行键}
if not (ActiveControl is TDbgrid) Then
Begin { 不是在TDbgrid控件内}
// key:=#0;
perform(WM_NEXTDLGCTL,0,0);{移动到下一个控件}
end else
if (ActiveControl is TDbgrid) Then{是在 TDbgrid 控件内}
begin
With (ActiveControl as TDbgrid).DataSource.DataSet Do
if not eof then next
else perform(WM_NEXTDLGCTL,0,0);
{ if Selectedindex<(FieldCount-1) then
Selectedindex:=Selectedindex+1 // 移动到下一字段
else Selectedindex:=0; }
end;
下面是一段程序,可以实现敲击Enter设置焦点到下一个控件:
procedure TAppbarMain.FormKeyPress(Sender: TObject; var Key: Char);
begin
if(Key=VK_RETURN) then
begin
SendMessage(Handle,WM_NEXTDLGCTL,0,0);
Key:=0;
end;
end;
if Key=VK_UP then
begin
PostMessage(Handle,WM_NEXTDLGCTL,1,0);
Key:=0;
end
if Key=VK_DOWN then
begin
PostMessage(Handle,WM_NEXTDLGCTL,0,0);
Key:=0;
end