David, gracias
No es del ENTER porque siempre lo utilizo para pasar de un campo al otro. Mi código del evento OnKeyPress es
Código Delphi
[-]procedure TBookingFrame2.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
case Key of
VK_UP :
begin
SelectNext(Sender as TWinControl, False, True );
Key := 0;
end;
VK_DOWN :
begin
SelectNext(Sender as TWinControl, True, True );
Key := 0;
end;
VK_PRIOR, VK_NEXT :
If not Panel2.Visible then
Panel1.SetFocus
else
DBGridRL1.SetFocus;
VK_RETURN :
If Shift = [ssCtrl] then begin
Key := 0;
If (Sender = EditDB1) or (Sender = EditDB2) or (Sender = EditDB3) then
ToolButton1Click(Sender);
end;
end;
end;
procedure TBookingFrame2.FormKeyPress(Sender: TObject; var Key: Char);
begin
If Key = #13 Then begin
If HiWord(GetKeyState(VK_SHIFT)) <> 0 then
SelectNext(Sender as TWinControl, False, True )
else
SelectNext(Sender as TWinControl, True, True );
Key := #0;
end;
end;