Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Scrollbar Vertical desaparece del DBGRID (https://www.clubdelphi.com/foros/showthread.php?t=42952)

jmlifi 26-04-2007 19:23:56

Scrollbar Vertical desaparece del DBGRID
 
Cuando El DbGRid muestra muchas lineas, el Scrollbar vertical desaparece (No siempre).Si la Consulta a devuelto muchos registros y si te posicionas en el primer registro, el scrollbar no aparece. Tengo que utilizar la bola del ratón para ver todos los registros

¿a qué es debido?

marcoszorrilla 26-04-2007 19:27:49

Nunca me ha ocurrido, puedes describir un poco más la situación, que tablas utilizas, con qué componentes te conectas... (algo de código).

Un Saludo.

jmlifi 27-04-2007 12:56:08

trabajo bajo firebird 2 y conexion dbexpress.


Tengo en un From dos DBGrid:
DGGrid1 : muestra la cabecera de la ofertas.
DGGrid2 : muestra el detalle de las lineas de ooferta

Los dos dbGrid están relacionados. Si me muevo a una oferta en el DBGrid2 se muestran las lineas detalle de dicha oferta.

Hay lineas de detalle que contiene muchos registros(se necesita un scrollbar vertical, pero no aparece) que a primera vista no se ven. Utilizando el teclado y la rueda del ratón los registros se ven.

gluglu 27-04-2007 14:25:15

A mi me ha pasado con maestros-detalles.

Cuando tienes dos DBGrid relacionados, al mover el cursor en el maestro, una vez si, una vez no, me muestra la barra de desplazamiento vertical del grid detalle.

Puedes perfectamente comprobarlo subiendo y bajando una vez en el maestro.

Es un bug supongo de Delphi. Lo he leido ya en otros varios foros. Al menos a mi me pasa con Delphi 2006 Vcl.Net y el TDBGrid estándar. Para mayor información utilizo Interbase 7.5, no sé si será con Interbase sólo o con otras bases de datos también.

La única manera y más eficiente de resolver esto, al menos concluyo yo, es redimensionar el DBGrid detalle cada vez que se produce un desplazamiento en el DBGrid maestro.

Siendo el DBGrid1 el maestro, el DBGrid2 el detalle, y los correspondientes DataSource's asociados :

Código Delphi [-]
procedure DataSource1DataChange(Sender: TObject; Field: TField);
begin
  DBGrid2.Height := DBGrid2.Height + 1;
  DBGrid2.Height := DBGrid2.Height - 1;
end;

Espero que te sirva de ayuda.

Saludos, ;)

LordRiper 27-04-2007 20:54:43

A mi me pasa con cualquier consulta, no necesariamente maestro-detalle, ahun no encuentro solucion alguna, habra que probar la solucion esa de redimensionar, pero heredandola al DBGrid, para no tener que estarsela poniendo a todas las formas....


La franja horaria es GMT +2. Ahora son las 00:32:17.

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