Ver Mensaje Individual
  #1  
Antiguo 30-08-2005
Avatar de sitrico
[sitrico] sitrico is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Caracas, Venezuela
Posts: 295
Reputación: 24
sitrico Va por buen camino
Simular un Shift+Tab (Control anterior)

Tengo el siguiente código enel OnKeyPress de un dbGrid:

Código Delphi [-]
If (dbAsi.State <> dsBrowse) And Not(ssShift in Shift) Then
   Begin
   If (Key = VK_DOWN) Then
      Key := VK_TAB
   If (Key = VK_UP) Then
      Begin
      Shift := Shift + [ssShift];
      Key := VK_TAB;  // Shift Tab
      DBGridAsiKeyDown(Sender,Key,Shift);
      Key := 0;
      End
   End;

La intención es que cuando el usuario edite la base de datos (dbAsi.State <> dsBrowse) y pulse las teclas flecha arriba y abajo en lugar de salir del registro se cambie de una columna a otra.

VK_Up = Shift+Tab y VK_Down = Tab

Con Vk_Down funciona perfecto pero, ¿ como simulo un Shift+Tab ?

Trate con SelectNext pero me salta al siguiente control (sale del dbGrid).

Si pulso shift+tab recibo los valores que uso aqui (Shift = ssShift y Key = VK_TAB)

También quisiera que el Enter trabajara como tab

Siempre hablando que el ActiveControl es un DBGrid.

Gracias
__________________
Sitrico
Responder Con Cita