Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Cómo registrar 2 componente en 1 paleta? (https://www.clubdelphi.com/foros/showthread.php?t=25534)

Gabriel2 26-09-2005 15:03:54

Cómo registrar 2 componente en 1 paleta?
 
Hola compañeros del foro...

He creado 2 componentes por separado Componente1.pas y Componente2.pas. Cada uno posee su propio archivo *.dpk (Package). Ahora como puedo hacer para tener en un solo archivo *.dpk los 2 componentes y cuando los instale aparezcan los dos en una misma paleta?


Saludos. Gracias...

Neftali [Germán.Estévez] 26-09-2005 15:30:04

Supongo que cada uno tendrá su método Register donde llamarás a RegisterComponents. Basta con que el parámetro Page en ambas llamadas sea el mismo; No importa que se registren desde diferentes sitios (packages o Units).

Gabriel2 26-09-2005 17:12:40

Un ejemplo...
 
Me podrías mostrar un ejemplo del procedimiento Register.

Neftali [Germán.Estévez] 26-09-2005 17:39:42

Extraído de los ejemplos de Delphi:

Código Delphi [-]
 procedure Register;
  begin
    RegisterComponents('Samples',[TPie]);
  end;


En el directorio de Delphi hay una carpeta Demos.
Busca dentro de esa carpeta, ficheros .PAS que tengan el texto RegisterComponents. Verás que hay unos cuantos que te pueden servir de ejemplo.

lento manu 26-09-2005 17:40:18

Register
 
Simplemente tienes que declarar a que paleta quieres que vayan los componentes, si es nueva, se creará automáticamente. en cada componente debes incluir:
Código Delphi [-]
...
procedure Register;
implementation
....
procedure Register;
begin
  RegisterComponents('Mi Paleta', [TmiComponente1]);
end;
Supongo que es esto lo que pides. ¿no?

Gabriel2 26-09-2005 23:19:01

Como me lo han explicado en sus ejemplos es como yo lo he realizarlo. Pero no me funciona. Yo he creado primero los dos componentes por separado y a cada uno le asigne un nombre de paleta diferente. Desinstale los componentes y las entradas en Library Path. Modifique el procedimiento Register y no me cambia de paleta se instalan en sus primeras paletas.

Pareciera como si en alguna parte de Delphi quedan registrados los componentes y cada vez que lo instalo me crea la paleta con el nombre de la primera paleta que tuvo, osea me quedan los controles por separado...

Qué puede estar pasando?

lento manu 27-09-2005 09:53:03

Prueba a borrar las dcu y todo lo que no sea el pas o dfm de tu código en el entorno del componente y repite la compilación del paquete. Es todo lo que se me ocurre. Si aún así sigue fallando, configura las paletas como usuario, pero el defecto no se solventa.

Neftali [Germán.Estévez] 27-09-2005 09:55:34

En algunas versiones de Delphi pasa que, si primero instalas dos compoenentes en paletas distintas y luego los intentas instalar en la misma, no aceptan el ultimo cambio. En algun lugar se le debe quedar la referencia antigua y no la cambia correctamente.

Pulsa click derecho del ratón sobre la paleta de componentes y accede a Properties. Verás a la izquierda todas las pestañas y a la derecha los componentes. Puedes eliminar pestañas obsoletas y mover componentes de unas a otras. Coloca el componente en la página correcta desde ahí, o si eliminas la pestaña incorrecta y los vuelves a instalar, verás como se instalan correctamente.

Gabriel2 27-09-2005 13:56:34

Gracias Neftali tenías razón...


La franja horaria es GMT +2. Ahora son las 17:49:40.

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