![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Validar/Grabar linea de un DBGrid con Enter
Hola colegas, en un dbgrid voy metiendo datos en una línea pasando de una columna a otra pulsando enter pero para grabar la línea tengo que pulsar la tecla "fecha abajo". ¿Cómo puedo sustituirla para poder validar la línea pulsando Enter?
Gracias. Salu2. |
#2
|
||||
|
||||
Puedes poner en el evento keydown del grid si se ha pulsado la tecla 'enter' y si estás en la columna apropiada, algo parecido a esto:
Código:
procedure Tform1.grArticulosKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var iCol : Integer; begin if (key in [VK_RETURN,VK_DOWN,VK_UP]) then begin iCol := grArticulos.FocusedColumn; if iCol = iLastColumn then ... hacerloquesea ... end; end;
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
|||
|
|||
Gracias colega pero no me sirve, me dice que FocusedColumn no definido, ¿será porque estoy usando Delphi 4 y esta versión no lo soporta ??
Pero de todas formas lo que yo quiero es no tener que llegar a pulsar la tecla flecha abajo (keydown) para nada, que con el Enter grabe la línea y pase a la línea de abajo. Gracias. Saludos. |
#4
|
||||
|
||||
pues facil, modifica un poco lo que te he puesto:
Código:
procedure Tform1.grArticulosKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var iCol : Integer; begin if key = VK_RETURN then begin iCol := TDrawgrid(grArticulos).Col; //iCol := grArticulos.SelectedIndex; //iCol := grArticulos.SelectedField.FieldNo; if iCol = iLastColumn then ...hacerloquesea... end; end;
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
||||
|
||||
y si no quieres que funcionen la teclas de flechas en el grid
Código:
procedure Tform1.grArticulosKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); var iCol : Integer; begin if (key in [VK_DOWN,VK_UP]) then exit; if key = VK_RETURN then begin iCol := TDrawgrid(grArticulos).Col; //iCol := grArticulos.SelectedIndex; //iCol := grArticulos.SelectedField.FieldNo; if iCol = iLastColumn then ...hacerloquesea... end; end;
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
![]() |
|
|
![]() |
|