![]() |
Crear columnas en runtime
Hola a tod@s.
¿Alguien podría decirme donde puedo encontrar rutinas para crear y eliminar columnas de un dbGrid en runtime? Utilizo delphi5 e Interbase. En la ayuda de delphi sólo encuentro el modo de hacerlo en tiempo de diseño. Muchas gracias, un saludo. |
|
Crear/Eliminar columnas de dbGrid
Muchas gracias bicho.
Lo que necesito es crearnuevas/eliminar columnas pero de un dbgrid, independientemente de la bbdd. Utilizo componentes externos a delphi y la propiedad visible de TColumn (cuando cambio en runtime de true a false y viceversa) me provoca problemas con la visualización de la ScrollBars. Se me ha ocurrido que tal vez lo evite si en vez ocultar/mostrar la columna, la creo o la elimino (todo en runtime). Muchas gracias |
Que componentes usas?
Hola Pedro-Juan!
Me suena que el dbgrid no permite crear y eliminar columnas, solo permite visaulizarlas o no. Dedido a que coge por defecto las columnas de la query que tiene enlazada. Pero si especificas los componentes a lo mejor alguien te guiará en tu camino ;) Saludos! |
colunmas en runtime
Muchas gracias xavinet.
Utilizo AlphaControls (www.alphaskins.com). En realidad el dbGrid es nativo de delphi, pero está "Skineado" por una utilidad (dbGridAdapter) de estos componentes (tienen muchos y bonitos componentes y está, creo, en proyecto, pero no tienen un componente dbGrid). Había pensado que de la misma manera que se crean/eliminan las columnas cuando pulsas el elipsis de la propiedad columns del dbGrid en tiempo de diseño, se podría hacer también en runtime, pero no encuentro nada. Muchas gracias y un saludo. |
¿Y compilaste las AlphaControls para que te habilite el uso del DBgrid?
Cita:
|
¿qué problema tienes exactamente con las scrollbars?
Lo digo porque ocultar o destruir, para la visualización es lo mismo, de hecho lo que hace es asignar cero a su width. Saludos |
Todo correcto
Gracias ContraVeneno
Está todo correcto, los dbGrid se "eskinean" bien, el problema ocurre cuando desde la propia aplicación, en Opciones, pongo a False la Visible de alguna columna, y ocurre con todas. Pero cuando lo dejo en las columnas que están creadas, es decir, las que están en la propiedad Columns, entonces se visualiza todo bien. Hola, Lepe. El problema es que en la zona de HorScrollBar, que tiene la propiedad visible a False porque no necesito ese desplazamiento, permanece como fondo lo que había en la pantalla anterior. Pero cuando en runtime, desde la propia aplicación, pongo las columns que están creadas en diseño, o sea, ninguna a False, se ve todo bien. Por eso pienso que tal vez creando/Eliminando en runtime podría solucionarse el problema. Muchas gracias. |
Por probar que no quede.
Igual que creas en diseño, puedes crearlos en ejecución, pero antes de intentar liar el proceso, intenta llamar a dbgrid.Columns.RebuildColumns, que reconstruye en tiempo de ejecución, todas las columnas a partir del dataset asociado. saludos |
La franja horaria es GMT +2. Ahora son las 08:57:43. |
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