![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
![]() Hola a todos,
llevo años trabajando con Delphi y es la primera vez que me ocurre esto. Estoy trabajando con Delphi 2006 y tengo un Dbgrid donde se insertan y actualizan datos de una tabla. El problema es que dentro de un registro, al pulsar la tecla "tabulador" para cambiar al campo siguiente, el foco va pasando por las distintas columnas del registro de forma desordenada. No hay propiedad "tab" en las columnas del dbgrid y no encuentro ningún sitio donde establecer el orden. Como he dicho antes, es la primera vez que veo esto, antes trabajaba con Delphi 6, y el orden es el que tienen las columnas en el Dbgrid. Os agradecería mucho la ayuda, llevo días dándole vueltas y tengo a los usuarios bastante "molestos" con el tema. Muchas gracias. |
#2
|
|||
|
|||
no puedes cambiar el orden de las columnas??
|
#3
|
|||
|
|||
No puedo cambiar el orden de las columnas, porque no sería un orden lógico.
|
#4
|
||||
|
||||
Lo único que se me ocurre es que el DBGrid tenga una ordenación de columnas y la consulta que lo alimenta otra... Pero aún así.
|
#5
|
|||
|
|||
espero que sirva
Mira buscando ayuda para mi programa de facturacion e inventario que me esta rompiendo la cabeza he encontrado esto que creo que te puede servir lo he modificado un poco pero funciona:
es el codigo de usar la tecla enter como tab dentro de un TBDgrid ,Creo que de esa forma puedes cambiar el orden del tab cambiando el selectindex: procedure Ttabla.DBGrid1KeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then { si es la tecla <enter> } if not (ActiveControl is TDBGrid) then { si no es un TDBGrid } begin Key := #0; { nos comemos la tecla } Perform(WM_NEXTDLGCTL, 0, 0); { vamos al siguiente control } end else if (ActiveControl is TDBGrid) then { si es un TDBGrid } with TDBGrid(ActiveControl) do if selectedindex < (fieldcount -1) then selectedindex := selectedindex +1 else selectedindex := 0; end; Lo he probado y funciona bien entonces la idea es cambiar la incrementacion del selectedindex , bueno ahi esta . Ya que me estoy volviendo loco. Saludos Si tienes un tiempo y me puedes ayudar con lo de la facturacion e inventario te lo agradeceria. Gracias |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Orden de tabulacion | mamen | .NET | 2 | 11-07-2006 10:01:26 |
cambiar orden columnas dbgrid | dvlt | OOP | 3 | 07-06-2006 14:31:47 |
Orden ascendente y descendente en DBGrid | Mathom | Varios | 4 | 16-12-2005 10:01:40 |
Clickar en el titulo de un dbgrid y me lo ordene por orden alfabetico ese campo | Nbull | SQL | 2 | 19-01-2005 11:11:04 |
Orden de Tabulación Ignorado | javiermorales | Varios | 2 | 09-05-2003 14:55:01 |
![]() |
|