Ver Mensaje Individual
  #9  
Antiguo 10-06-2003
Avatar de javiermorales
javiermorales javiermorales is offline
Miembro
 
Registrado: may 2003
Ubicación: Alicante
Posts: 272
Reputación: 21
javiermorales Va por buen camino
Hola Marcos, sí que utilizo el "KeyDown" del DBCtrlGrid. Te adjunto el código que utilizo. en fichero adjunto.

procedure TPartyDesc.DBCtrlGrid2KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
......
if (Key=VK_RETURN) then //Simulación de Tab (Enter)
begin
Key:=VK_TAB;
DBCtrlGrid2.DoKey(gkNull);
Exit;
end;
......
end;

Como ves, cuando se presiona Enter, lo sustituyo por Tab y funciona, pero no puedo controlar su respuesta, ya que si utilizo "DBCtrlGrid1.DoKey(GkDown)", el foco pasa al mismo control, pero del siguiente registro.

La pregunta está en como controlar el paso al siguiente control del DBCtrlGrid, de una forma similar a como se hace en los forms (Perform (WM_NEXTDLGCTL,0,0)) o en los DBgrids (TDBGrid(ActiveControl).selectedindex).

Gracias.
Responder Con Cita