Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-09-2005
eureka eureka is offline
Miembro
 
Registrado: sep 2005
Posts: 13
Poder: 0
eureka Va por buen camino
Desplazar ScrollBar de TDBGrid

Saludos,

Se presenta una DBGrid ligada a un TQuery. Despues de hacer un Close y un Open sobre la query, quiero mantener la posicion de la Scrollbar horizontal en la misma posición que tenia antes de realizar el Close.

He intentado utilizar Grid.ScrollBy, pero sin exito.

El siguiente codigo mueve la scrollbar pero con ella no se desplaza el contenido de la grid.
Código Delphi [-]
iPosSbHorz:= GetScrollPos((Column.Grid As TDBGrid).Handle,SB_HORZ);
Query.Close;
Query.Open;
SetScrollPos((Column.Grid As TDBGrid).Handle,SB_HORZ,iPosSbHorz,True);

Gracias por su tiempo y sugerencias

Última edición por eureka fecha: 20-09-2005 a las 14:00:51.
Responder Con Cita
  #2  
Antiguo 20-09-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
¿Has probado ha hacer un Locate/similar sobre la tabla?
De esa forma te posiciones sobre el registro activo a la vez que mover el Scroll; aunque no estoy del todo seguro de que sea lo que necesitas.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 20-09-2005 a las 15:34:26.
Responder Con Cita
  #3  
Antiguo 20-09-2005
eureka eureka is offline
Miembro
 
Registrado: sep 2005
Posts: 13
Poder: 0
eureka Va por buen camino
Un locate sobre la query desplaza la scrollbar vertical, pero no mueve a la posicion deseada el scrollbar horizontal
Responder Con Cita
  #4  
Antiguo 20-09-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Perdón, perdón, perdón,... se me escapó lo de horizontal...
Prueba con ésto (uno por cada columna que quieras desplazar):

Código Delphi [-]
   SendMessage(DBGrid1.Handle, WM_HSCROLL, SB_PAGERIGHT, 0);
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 20-09-2005 a las 15:59:18.
Responder Con Cita
  #5  
Antiguo 20-09-2005
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 26
delphi.com.ar Va por buen camino
Probá esto:
Código Delphi [-]
  qryData.DisableControls;
  try
    qryData.Close;
    ...
    qryData.Open;
  finally
    qryData.EnableControls;
  end;

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #6  
Antiguo 20-09-2005
Avatar de jmariano
jmariano jmariano is offline
Miembro
 
Registrado: jul 2005
Posts: 376
Poder: 19
jmariano Va por buen camino
Tambien podrías probar con la propiedad "SelectedIndex" del DBGrid:

Código Delphi [-]
iPosSbHorz:= DBGrid1.SelectedIndex;
Query.Close;
Query.Open;
DBGrid1.SelectedIndex := iPosSbHorz;

Saludos!
Responder Con Cita
  #7  
Antiguo 20-09-2005
eureka eureka is offline
Miembro
 
Registrado: sep 2005
Posts: 13
Poder: 0
eureka Va por buen camino
Si señores! Son un valor seguro. La propuesta hecha por Neftali funciona bien.

Código Delphi [-]
 
iPosSbHorz:= GetScrollPos((Column.Grid As TSPDBGrid).Handle,SB_HORZ);
 
...
 
while GetScrollPos(Handle,SB_HORZ) < iPosSbHorz do
SendMessage(Handle, WM_HSCROLL, SB_LINERIGHT, 0);

Gracias a todos

Sabrían como pintar la "muesca","triángulo"... de ordenación en el encabezado de columna de una TDBGrid?
Responder Con Cita
  #8  
Antiguo 20-09-2005
Avatar de jmariano
jmariano jmariano is offline
Miembro
 
Registrado: jul 2005
Posts: 376
Poder: 19
jmariano Va por buen camino
Cita:
Empezado por eureka
Sabrían como pintar la "muesca","triángulo"... de ordenación en el encabezado de columna de una TDBGrid?
Nuevas preguntas, nuevos hilos
(Si no lo has hecho, te sugiero leerte la Guía de estilo )

Saludos!
Responder Con Cita
  #9  
Antiguo 20-09-2005
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Todo estas caracteristicas y mas (ex columna chekbox) lo encuentras en el JvDBGrid de la libreria JVCL
__________________
¿Microsoft? No, gracias..
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 10:46:09.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi