![]() |
¿ Se le puede dar la vuelta a un Dbgrid ?
Hola a tod@s,
un dbgrid presenta los datos con los títulos arriba y despliega los datos hacia abajo, ¿ se puede hacer al revés ?, los títulos abajo y los datos hacia arriba. Utlizo delphi 7. Saludos |
Poderse, poderse, no se puede... Al menos con el estandard.
Otra cosa es que intentes simularlo... No se si es una salvajada y lo importante que es para tí esta cuestión, pero se trataría de: * El primer DBgrid colocarlo arriba sin los títulos (no recuerdo si se puede). * Colocar abajo un segundo DBGrid que sólo tenga los títulos y sin registros (o desactivado o activado con una consulta que no devuelva nada). * Ambos Grids deben tener las mismas columnas * Lo que te quedaría sería sincronizar las acciones posibles que se puedan hacer sobre la fila de títulos en ambos DBGrid. Cambiar ancho, reordenar columnas,... |
Puedes hacerlo con un stringgrid, te tocaría dibujar todos los datos... pero así aseguras el resultado.
primero sería cargar los datos en el stringgrid con un while a tu dataset, sería bueno que cancelaras la actualización del componente en lo que cargas los datos para que sea menos tardado y al final llamar el evento Paint del stringgrid. para dibujar en el stringgrid se hace: *la propiedad defaultdraw a false. * en el Evento OnDrawCell harias
Tendrías que jugar con el procedimiento para darle el efecto tridimencional a la celda de los títulos y la alineación de la informacion, en el ejemplo se alinea al centro. |
Muchas gracias a los dos, me pongo con ello y ya os comento los resultados.
Gracias de nuevo |
Puedes hacer algo similar a lo que describe Neftalí pero en lugar de un segundo DBGrid para los títulos, usas un HeaderControl (pestaña Win32) que, básicamente es para eso, encabezados de columnas.
// Saludos |
Cita:
Había oído varias veces este componente, pero nunca lo había utilizado. Mejor este que lo comentado. Creas tantas secciones como columnas tiene el DBGrid, defines DragReorder a True y casi lo tienes todo. Controlar cuando cambies el ancho y la reornenación para hacer lo mismo en el DBGrid. |
| La franja horaria es GMT +2. Ahora son las 20:21:51. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi