FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Uses de un subcomponente
Hola, tengo un problema al crear un subcomponente con setsubcomponent y es el siguiente:
En la unidad del componente creo el subcomponente y no hay ningun problema.
Bueno para crear este subcomponente tengo que añadir a la seccion uses IdThreadComponent como es logico. A la hora de usar el componente en el formulario cuando arrasto el componente y ejectuto la aplicacion delphi añade automaticamente las librerias necesarias para ese componente a la seccion uses del formulario pero no asi la unidad IdThreadComponent necesaria para el subcomponente. La pregunta es ¿hay alguna forma a la hora de crear el componente de hacer que delphi añada la unidad correspondiente al subcomponente cuando se utiliza en una aplicacion? Gracias por el tiempo que dediquen a mi pregunta. Un Saludo. Última edición por white_zombie fecha: 08-05-2008 a las 17:20:19. |
#2
|
|||
|
|||
Lo correcto es crear un paquete del componente y de todas las units q necesita y instalar este paquete en la paleta, asi como en el search path (a veces, otras veces es innecesario) de opciones de proyecto. Al menos en delphi 5 funciona mas o menos asi.
|
#3
|
||||
|
||||
Gracias por tu respuesta, ya creo un paquete con el componente y las units que necesita se introducen en la seccion uses de la unidad del componente no?
Haciéndolo así me ocurre lo que explico en el primer mensaje. |
#4
|
|||
|
|||
Te hablo desde delphi 5, no se si en versiones siguientes ha cambiado el procedimiento. Creas un nuevo proyecto de package (.dpk) que no es mas que un proyecto de componente. Encontraras dos nodos en un arbol, el uno es contains y el otro requires. Añade las units q necesita para compilar en el 'contains' (incluida la implementacion de tu componente, el cual debe tener en sus uses referencias a las units q necesita) y quedaran insertadas dentro del .dpk. Ahora mismo, ya tendrias todo el componente encapsulado. Si lo compilas, te resultara en un .bpl, que es un paquete/libreria ya compilado. Este lo puedes luego añadir a la paleta con (Delphi 5) Component->Install Packages, y en teoria las units q usa el componente no las deberas colocar en ningun sitio mas.
Venga, espero que te sirva. edito : en las opciones del .dpk, tendra q estar en el search path las rutas, claro esta... Última edición por coso fecha: 08-05-2008 a las 19:09:11. |
#5
|
|||
|
|||
Hola...
Si el componente u objeto que usas dentro de tu componente no es visible fuera de este, no es necesario hacer referencia a este en el uses de la unidad que lo va a usar. A menos claro que tengas que usar algún tipo de datos definido en esa unidad, en dado caso, tienes que ponerla de forma manual en el uses. Saludos... |
#6
|
||||
|
||||
Gracias a los dos, mi caso es la segunda opción que dice Maeyanes, por lo que me queda claro que hay que poner manualmente la unidad del subcomponente en el uses del formulario.
Un saludo. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Error de herencia en diseño con subcomponente | rastafarey | OOP | 5 | 12-05-2013 11:48:34 |
|