Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-02-2005
le4br le4br is offline
Miembro
 
Registrado: nov 2004
Posts: 17
Poder: 0
le4br Va por buen camino
ScrollBar Vertical del DBGRID desaparece

Hola,

Estoy hacendo un busca entre fechas (between), usando ADOQuery, y todo funciona bien. En el clic de un botón abro la consulta SQL en una tabla (Access), sin problemas (decena de rows son mostrados com el scroll vertical).

Dispos de una otra distinta busca, si el resultado de la consulta son una o pocas linas (rows) el Scroll vertical del DBGRid desaparece. hasta aki, ok! Pero cuando el usuario cancelar la busca (SQL.Clear) o hacer otra busca dondo son retornado decenas de linas, el scroll vertical del DBGRID no coinciden con la cantidad de registro que tenga la tabla, o sea, todos los resultados son retornados pero, el scroll nunca aparece.

Percebi que todo volta a funcionar (scroll bar aparecer) depois de hacer exactamente la misma busca 2 veces.

Para solucionar, estoy tentando forzar el scroll vertical a aparecer en el evento DataChange del DataSource. Algo como:

Código Delphi [-]
procedure TForm1.DataSource2DataChange(Sender: TObject; Field: TField);
begin
ShowScrollBar(DBGrid2.Handle, SB_VERT, ADOQuery2.RecordCount > 0);
end;
Pero tambien no funciona bien. Si alguien puede orientarme se lo agradeceré.

Saludos a todos!
Responder Con Cita
  #2  
Antiguo 11-03-2005
le4br le4br is offline
Miembro
 
Registrado: nov 2004
Posts: 17
Poder: 0
le4br Va por buen camino
Sigo com el problema!

Sigo com el problema. Ahora tengo otro dbgrid donde tengo que hacer filtros utilizando SQL. El filtro funciona bien pero, la barra (scroll vertical) en DBGrid no aparece si anteriormente el ItemIndex del ComboBox (2 rows) estava seleccionado.

Hay como hacer que la barra vertical en DBGrid, SIEMPRE aparecia mesmo si son mostrados un o dos rows?

Gracias de antemano.
Perdon por el espanol.

Código Delphi [-]
if ComboBox1.ItemIndex = 0 then
with ADOQuery1 do begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM AGENDA ORDER BY apelido ASC'); // 100 rows en DBGrid
Open;
end

else if ComboBox1.ItemIndex = 1 then
with ADOQuery1 do begin
Close;
SQL.Clear;
SQL.Add('SELECT * FROM agenda WHERE apelido LIKE "A%"'); // Solo 2 rows en DBGrid
Open;
end
Responder Con Cita
  #3  
Antiguo 20-03-2005
jose.mendez jose.mendez is offline
Registrado
 
Registrado: feb 2004
Posts: 8
Poder: 0
jose.mendez Va por buen camino
Me pasa lo mismo

Hola:
Me pasa lo mismo que a ti con un dbgrid estoy probando con:
SetScrollRange
y
ShowScrollBar

Y a veces va y otras no , el motivo no lo sé, seguire intentandolo si lo consigo te dire algo. Sospecho de que sea algun problema gráfico ( Tarjeta de video) .
Si tienes alguna pista más aunaremos esfuerzos

Un saludo
Responder Con Cita
  #4  
Antiguo 21-03-2005
Gabriel Gabriel is offline
Miembro
 
Registrado: may 2003
Ubicación: PalauTordera
Posts: 115
Poder: 21
Gabriel Va por buen camino
prueba con el cuento de la vieja.

obliga al DBGrid a redibujarse

Panel align al botton
DBGrid align al Client

Panel1.Height := Panel1.Height + 1;
Panel1.Height := Panel1.Height - 1;

al redimencionar el panel Panel1.Height := Panel1.Height + 1,( ojo el Grid no lo redimencionarias por que ya esta al Client ) tambien redimencionas el Grid, lo haces un Height mas pequeño, con lo que obligas a que se dibuje de nuevo.

Luego lo vuelves a poner como estaba, Panel1.Height := Panel1.Height - 1;

Si alguien conoce alguna mas seria, se agradece.
__________________
Gabriel
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 14:28:06.


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