PDA

Ver la Versión Completa : Desaparicion de ScrollBArs en DBGrid


adrall
19-09-2012, 19:52:25
Hola,

Me ocurre en una aplicación que, sin saber porque, desaparecen las ScrollBars en los DBGrid.
La aplicación esta desarrollada en XE y corre perfectamente sobre varios ordenadores con XP y Win7.
La hemos instalado en un nuevo ordenador con Win7 y solo en este ocurre esta anomalia.

Son DBGrid conectados a Querys sobre MySQL y a partir de una indeterminada accion desaparecen las barras
en casi todos los DBGrid.

Os ha ocurrido alguna vez, teneis alguna idea de lo que puede passar?

Muchas gracias.

ecfisa
19-09-2012, 22:12:53
Hola adrall.

Las versiones cambian los problemas quedan... :rolleyes:

Incrementa y decrementa la propiedad Width del TDBGrid en el evento AfterScroll del TDataSet relacionado.

Ejemplo:

procedure TForm1.DataSetAfterScroll(DataSet: TDataSet);
begin
DBGrid1.Width := DBGrid1.Width + 1;
DBGrid1.Width := DBGrid1.Width - 1;
end;

Esto deberás hacerlo por cada DBGrid/DataSet que te ocasione el problema.

Saludos.

Casimiro Notevi
19-09-2012, 23:26:30
:eek: ¿Y eso, para que lo repinte?. Qué cosas :D

roman
19-09-2012, 23:37:52
No recuerdo que me haya pasado algo así. ¿Algunos pasos para reproducir el problema? ¿O sucede aleatoriamente?

// Saludos

ecfisa
20-09-2012, 00:18:19
Hola roman.

A mi me sucedía de forma aleatoria, en ese entonces, buscando encontré esa solución al bug que desconocía. No recuerdo si tomé nota del sitio, si lo encuentro pongo la referencia.

Lo que tengo presente es que no funcionó usar Refresh, Invalidate o cualquier otro método que intenté, realmente me tuvo a mal traer... :(

Saludos. :)

ecfisa
20-09-2012, 06:49:13
Hola de nuevo.

El caso se me presentó, hace ya un tiempo, en un ingreso de anuncios en el que se mantenian varias tablas en relación master/detail.

Y como lo prometido es deuda, el bug está reportado aquí: [ TDBGrid vertical scrollbar dissappears (http://qc.embarcadero.com/wc/qcmain.aspx?d=7527) ].

Saludos. :)

Casimiro Notevi
20-09-2012, 09:56:44
Hasta "ellos" tienen que hacer chapuzas algunas veces :D

adrall
20-09-2012, 09:58:25
Gracias ecfisa, parece que la solución que expones funciona, he incluido este codigo en otro evento como el OnEnter del TTabSheet que contiene los TDBGrids y tambien funciona, [así no sobrecargo el scroll del Dataset ¿?¿?¿]. He leido el enlace y como bien dices parece que este extraño comportamiento viene de lejos.

Muchas gracias a todos.