Agregar objetos a un GridPanel en tiempo de ejecución
Hola Foro!
Desde hace algunos días he estado tratando de generar una "tabla" de botones usando un GridPanel pero desgraciadamente no he dado con el clavo de como hacerlo en tiempo de ejecución. Hasta ahora solo he podido aumentar el numero de columnas y filas así como modificar sus tamaños en tiempo de ejecución, pero lo mas importante, que es crear los botones o cualquier otro objeto en sus celdas, no lo he podido hacer. Por desgracia la ayuda del Delphi 2007 deja mucho que desear y no trae documentación al respecto, tampoco he encontrado información en Internet, así que si alguien ya pasó por esto y encontró como hacerlo le agradecería muchísimo que me echarla la mano. Lo que me agrada mucho del GridPanel son sus propiedades de resize, pero no estoy cerrado a usar este componente solamente, así que si alguien sabe de alguna otra forma alternativa de hacerlo pues también sera bienvenida. Gracias de antemano y un saludo para todos! |
hola. Prueba esto a ver si te sirve...
es probable, no obstante, que haya maneras mas elegantes. saludos PD : releyendo, vi que es un 'GridPanel' y no un 'Panel'. :confused: No conozco ese componente asi que quiza este codigo no te sirva. Bueno, igualmente te lo dejo por si sí lo hace :D |
Hola coso, muchas gracias por tu ejemplo, me es muy útil también para este caso.
Por otra parte, ya encontré como agregar componentes al GridPanel en tiempo de ejecución, aquí les dejo un ejemplo, solo necesitan un TGridPanel con 4 Columnas x 4 Renglones y un TButton:
Sin embargo, esta historia sigue sin tener un final feliz, ya que, hay un bug en el procedimiento TControlCollection.AddControl(AControl: TControl; AColumn, ARow: Integer) del unit ExtCtrls.pas el cual puede ser arreglado invirtiendo los indices Row y Column, pero el problema ahora es que no tengo ese archivo, solo tengo el archivo ya compilado (ExtCtrls.dcu) :(. ¿Alguna idea de donde lo puedo encontrar para aplicar el Workaround? *Nota: Para mas información sobre el bug, vea la siguiente liga. Saludos! |
La franja horaria es GMT +2. Ahora son las 14:39:00. |
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