FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
Hola
Lo primero seria saber que clase de objetos estas creando. Sin descienden de TComponent y les asignas un parent o son descendientes de TObject. Podrias almacenar los objetos en un TObjectList y asi puedes tener acceso a ellos. Bueno depende de la forma que los estes creando. Saludos
__________________
Caminante, son tus huellas el camino y nada más; Caminante, no hay camino, se hace camino al andar. Antonio Machado |
#2
|
||||
|
||||
Hola y gracias por vuestras respuestas.
Los objetos que estoy creando son unos componentes propios que tienen un "TImage" y un "Caption" dentro de un recuadro para poder mostrar botones con imágenes y un texto con colores configurables, etc. Estuve mirando el comando "FindComponent" pero no me funcionaba, no sé si hay algún uses que no estaba poniendo o cual era el problema pero no pude llegar a utilizarlo. ¿Algún ejemplo tontuno y/o hay que usar algún uses en especial? Gracias y un saludo Edito: Ok, ya veo como es la sintaxis. Pruebo y si tengo algún problema ya comento. Gracias.
__________________
Be water my friend. Última edición por newtron fecha: 14-11-2020 a las 11:32:18. |
#3
|
||||
|
||||
¿Cómo los creas? ¿Puedes poner ese trozo de código?
|
#4
|
||||
|
||||
Claro, te lo paso aunque le he dado otra solución porque, como siempre, tengo el tiempo escaso y le estaba dando muchas vueltas a este tema.
__________________
Be water my friend. |
#5
|
||||
|
||||
Se me ocurre que puede ser por el tema del Owner.
Segun la ayuda componentcount: Indicates the number of components owned by the component. Si estás creando los componentes sin Owner, el ComponentCount/Components[i] no los encontrará. Y lo mismo pasará si estás utilizando el ComponentCount/Components[i]sobre un contenedor al que no pertenecen. Por otro lado yo recomiendo por temas de optimización (y para más seguridad) que en lugar de utilizar FindComponent, crees una lista personal (TList/TStringist/TObjectList/TList<Tcomponent>,...) para almacenar, gestionar, buscar,... los componentes creados en runtime. ACTUALIZACIÓN: Ahora que veo el código, se me ocurren 2 opciones: (1) Crear los componentes con un Owner. (2) Añadirlos a una lista propia para gestionarlo.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
||||
|
||||
Germán.
Efectivamente he tirado por la opción de crear una lista para guardar los componentes. De una forma o de otra viene bien conocer el problema por si tengo que "recular" en el manejo de todo esto y volver a la búsqueda de los componentes creados. Gracias a todos y un saludo.
__________________
Be water my friend. |
#7
|
||||
|
||||
Yo te recomiendo que huyas de esto:
Te evita un montón de problemas con el manejo de la memoria, con el borrado... |
#8
|
||||
|
||||
Yo lo he usado muchas veces y por ejemplo, utilizar una TStringList ordenada, con el nombre de los componentes, mejora infinitamente la velocidad (más cuanto mayor sea el número de componentes) ya que la búsqueda en una lista ordenada es dicotómica, en lugar de secuencial.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#9
|
||||
|
||||
También puedes asignar a la propiedad "Tag" del botón el código del artículo, así cuando se pulse un botón no hay que buscar nada, solamente tomar su tag y ya tienes el código del artículo.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Acceder a componentes creados en ejecución | bulc | Varios | 5 | 01-03-2019 16:44:17 |
Error TStringList creados en tiempo de ejecución | subzero | Varios | 14 | 26-01-2008 13:58:05 |
Destruir Qrlabels creados en tiempo de ejecucion | Ade | Impresión | 6 | 08-10-2006 19:46:28 |
Eventos en componentes creados en tiempo de ejecucion | joumont | OOP | 3 | 27-12-2005 14:48:23 |
Objetos creados en tiempo de ejecución | Scocc | OOP | 4 | 13-06-2003 20:55:29 |
|