FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
No se ven controles en herencia visual
Hola, tengo un Form con varios controles y algunas propiedades nuevas, y he seguido los pasos para meterlo en el repositorio (con algún que otro problema pero al final bien ). El problema es que cuando heredo en el IDE no se ven los otros controles, solo cuando ejecuto. ¿Debo hacer algo más?
Gracias por adelantado PD: ya sé que es una pijotada, pero es más facil situar el resto de los controles viendo los que ya tienes :P. |
#2
|
||||
|
||||
Te cuento que hago uso y abuso de la herencia visual, y nunca me ha sucedido algo similar... ¿Porqué no nos cuentas "los pasos" que haces?
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
#3
|
||||
|
||||
Hola,
Posiblemente lo que estás haciendo es cambiar manualmente desde la ventana de código la clase de la que hereda tu form. Cuando haces esto en modo diseño no funciona porqué el dfm se ha creado como un dfm del ancestro original. Es decir, imagínate que tienes
Si tu sustituyes TForm por TMiForm, que es una clase que tienes en el Object Repository, en diseño lo verás como un form heredado de TForm. A la práctica, vacío. Lo que tienes que hacer es ir a File->New->Other y desde allí seleccionar el form que has dejado en el Object Repository. De esta forma, el dfm será correcto y podrás ver en diseño tu form como toca Suerte! |
#4
|
||||
|
||||
Cita:
http://www.gexperts.org/opentools/ Epecíficamente ve al tópico "How can I add published properties to a TForm descendent?" que en su último párrafo dice: Cita:
|
#5
|
|||
|
|||
Guau, que velocidad en responder, así da gusto . Muchas gracias!!
Os explico los pasos que he seguido: 1. He metido los controles en el formulario 2. He hecho eso de añadir el formulario en un paquete de ejecución y en un paquete de diseño poner el Register con eso de RegisterModule... 3. He añadido el formulario al Repositer 4. He creado una aplicacion nueva, y he añadido el formulario a partir de New->Others->El formulario y he marcado inherited. He cerrado la aplicacion y la he vuelto a abrir y nada. Ahora que lo pienso puede que el fallo este en que el formulario está en el paquete de ejecucion y no en el diseño, ahora lo pruebo y comento. Saludos EDITO: eso de separarlo en dos paquetes lo hice por un problema de que no encuentra el Proxies.pas, y en la pagina de Borland decia que hiciera eso de separarlo. No puedo añadir el formulario al paquete de diseño pq dice que ya está en el otro paquete . Sigo haciendo pruebas... EDITO 2: se me olvido decir que las propiedades publicadas me funcionan bien (al principio no ), el problema unicamente está en los controles. Última edición por Sirkius fecha: 07-06-2004 a las 21:20:25. |
#6
|
||||
|
||||
Hola.
Yo no hago nada de todo esto. No pongo el formulario base en el repositorio. Añado el formulario base (el que se va a heredar) como un formulario más en el proyecto (Naturalmente lo quito de la lista de formularios que se crearán automáticamente). Después, para añadir un formulario hijo. Simplemente le doy al icono de la hoja en blanco (equivale al File -> Add -> Other), y se muestra el repositorio. Selecciono la pestaña del proyecto actual, y allí muestra todos los formularios del proyecto. Selecciono el formulario base, y ya está. Te va a crear un formulario heredado de él. Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no). |
#7
|
|||
|
|||
Pues nada , he probado creando un nuevo formulario con un label y si que iba bien . Toque el dfm del formulario "padre", así que voy a mirar si es eso.
Última edición por Sirkius fecha: 07-06-2004 a las 21:44:56. |
#8
|
|||
|
|||
He probado varias cosas (quitandolo del Repository, del package de ejecucion, etc.) y he visto que lo que falla es que esté registrado con RegisterCustomModule... seguire mirando...
|
#9
|
||||
|
||||
Cita:
Acabo de hacer la prueba y, en efecto, si uso RegisterCustomModule para agregar propiedades publicadas entonces no se muestran los controles. Pero si hago lo que dice en la página que te indiqué entonces puedes ver los controles junto con las propiedades publicadas. // Saludos |
#10
|
|||
|
|||
Ok, lo siento por no haber leido eso (intendo huir de los textos en ingles ). La verdad es que prefiero imaginarme donde irán que montarme toda esa historia de heredar dos veces.
Muchas gracias!! |
#11
|
||||
|
||||
Cita:
// Saludos |
|
|
|