Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Control de filas en DBgrid (https://www.clubdelphi.com/foros/showthread.php?t=37859)

picapiedra2 24-11-2006 13:33:50

Control de filas en DBgrid
 
Hola a todos,

Necesito que el componente DBgrid muestre las filas en blanco que yo desee. Sólo muestra los registros de la tabla correspondiente, pero esto visualmente no me gusta porque si la tabla no contiene ningun dato queda el fondo del DBGrid sin nada.No se como solucionarlo.

Gracias a todos de antemano.

Neftali [Germán.Estévez] 24-11-2006 13:52:41

Cita:

Empezado por picapiedra2
...el componente DBgrid muestre las filas en blanco que yo desee.

Eso de por sí ya no tiene mucho sentido. Como bien dices el DBGrid no es más que una muestra de lo que hay en una tabla; Si mostrara líneas en blanco querría decir que en la tabla hay registros en blanco.

Se me ocurre:
(1) Que utilices un TStringGrid, cosa bastantre ineficiente y qe te va a dar problemas seguro.
(2) Que intentes "pintar" el fondo del DBGrid con líneas horizontales y verticales a modo de las líneas del DBGrid cuando hay datos; Ten en cuenta que el ancho de las columnas puede variar. Aun así (aun siendo la mejor opción -parece-) no acaba de convencerme.

AzidRain 24-11-2006 18:25:15

Estoy de acuerdo con Neftali, no tiene caso mostrar filas en blanco porque lo lógico es pensar que son registros en blanco. Un dbGrid no es como Excel. Hacerlo así te daría un problema de usabilidad ya que el usuario podría confundirse.

Ahora bien, si insistes, tendrás que cambiar el metodo que pinta las filas para que en caso de no haber registro que pintar pinte una fila en blanco con separadores de columna. Podrías pintar el fondo de las filas en blanco de diferente color para indicar que no contienen datos.

picapiedra2 27-11-2006 22:49:32

¿Me podrías echar una mano de como lo podría hacer?

AzidRain 01-12-2006 01:30:03

Perdon por no contestar...:)

Puedes checar mientras te busco código en la ayuda de Delphi bajo TDBGrid...buscando los eventos...me parece que es OnPaint...Pero mejor deja, te busco un código viejito y lo pego.


La franja horaria es GMT +2. Ahora son las 18:27:32.

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