![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Hola nuevamente, pues estoy de regreso con una nueva duda, me disculpo si es que este hilo ya está abierto, pero no pude encontrar informacion que me sirviera para resolver mi problema.
Tengo un Formulario principal: "TFMain" Tengo un Formulario "TFImagen" que se creará en tiempo de ejecucion y se alojara en una nueva pestaña de un PageControl1 que está en "TFMain". Esto lo hago con el siguiente codigo:
y hasta ahi todo bien, puedo crear tantos Formularios "TFImagen" como yo quiera y puedo acceder a las propiedades de cualquier "TFImagen" desde "TFMain" con el siguiente codigo:
Pero el problema es cuando desde un "TFImagen" quiero acceder a las propiedades de "TFMain". y es que no puedo poner en el unit del formulario dinamico uses Main (que es el unit de TFMain) pk me marca un error por referencia circular, entonces como puedo acceder a las propiedades de mi formulario principal?? Dado que el padre de TFImagen es tabsheet, me imagino que primero debo acceder a tabsheet y luego al padre de tabsheet y asi hasta llegar al TFMain que es el formulario principal, pero pues no tengo ni idea de como hacer esto. Espero puedan ayudarme nuevamente, y gracias de antemano. |
|
#2
|
||||
|
||||
|
para evitar la referencia circular siempre puedes agregar a la unit que necesitas en el uses de la implementación (implementation). Con esto podras acceder a cuanquier metodo o funcion que se encuentre ahi.
Ahora, que puedas acceder no quiere decir que este bien. No tiene mucho sentido que tu imagen este accediendo al formulario principal. Si necesitas algo que esta ahi, lo mas probable es que ese metodo no este en el lugar correcto. Suerte
__________________
[Crandel] |
|
#3
|
||||
|
||||
|
Gracias por tu respuesta Crandel, si sé que probablemente no sea logica esta referencia circular, pero para ciertos propositos necesito hacerlo de esta manera por el momento. Lamentablemente no me sirvio la solucion que me diste para resolver el problema, pues solo puedo acceder a los constructores y las funciones, pero no puedo acceder a los componentes (Como el PageControl que tengo ahi) ni a las propiedades como color, caption, etc. Espero puedan darme otra solucion, gracias nuevamente
|
|
#4
|
||||
|
||||
|
Hola,
Pues creo que el asunto puede pasar por solucionar la referencia circular. Si el formulario "padre" expone una variable pública de su tipo, creo que tal vez no fuera mala idea acceder a ella, pero, para eso es preciso que dicha variable sea accesible desde el formulario "Imagen". Porque reescribir el constructor del formulario imagen, de forma que se le pase tal vez una referencia de la instancia del formulario "padre", de modo que pueda guardarla y usarla cuando le sea menester, esto, digo, ¡oyes! Pues a lo mejor es otra posibilidad... |
|
#5
|
||||
|
||||
|
Cita:
¿Para qué necesitas acceder al TFMain?, ¿exactamente qué quieres consultar o modificar?. El tema de referencias circulares indica un mal diseño. Si te empeñas en seguir por ese camino, enredarás mucho las cosas, tanto que después no sabrás qué demonios hace tu aplicación. Creo que los tiros van por crear un evento personalizado, pero hasta que no te expliques, no lo puedo confirmar. Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 12-02-2008 a las 00:27:28. |
|
#6
|
||||
|
||||
|
Hola,
Cita:
![]() |
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Como cambiar valores en la ventana "General" propiedades del sistema | JuanErasmo | API de Windows | 52 | 17-02-2012 17:42:20 |
| Comentario "aplastante" contra los que atacan la "piratería" | Casimiro Noteví | La Taberna | 12 | 07-03-2010 14:03:02 |
| Como hacer que se vea "Si" en vez de "TRUE" en un DBGrid | lu9eui | C++ Builder | 2 | 07-08-2007 04:03:13 |
| Necesito llamar a métodos de clases "hija" desde su clase "padre" | Flecha | OOP | 17 | 20-04-2007 00:03:53 |
|