Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Modo diseño y modo ejecución (https://www.clubdelphi.com/foros/showthread.php?t=25065)

buildero_d 11-09-2005 00:07:02

Modo diseño y modo ejecución
 
Que tal colegas,

Tengo la siguiente duda y espero contar con su valiosa ayuda para encontrar la mejor solución a mi problema.

Me he creado un componente personalizado basado en un CombBox. Bien, lo que he intentado (y no he logrado hacer) es ejecutar una función (privada) que forma parte de mi componente en modo ejecución. Es decir inicializar (por decirlo asi) algunos valores del combo.

Mas explicitamente lo que intento hacer es agregar una serie de elementos a la lista del combo dependiendo de ciertos valores que tengo como propiedades. Estos elementos se deben de cargar en modo ejecucíon y no em modo diseño.

Lo del modo en ejecución esta resuelto, lo que no he podido hacer es cargar la lista.

Intente agregar la linea que ejecuta la función en el contructor de la clase, pero, en ese momento los valores de mis propiedades son NULL y por esa razón no se cargan los items a al combo.

La pregunta es: ¿Cómo puedo llamar a esa función, inmediatamente después de que paso por el contructor de la clase?

De antemano, muchas gracias.

Saludos.

jmariano 11-09-2005 00:18:23

Tienes que realizar la operación en el método "Loaded" de la clase (has de sobrecargarlo), ya que es ejecutado una vez que se hayan leído los valores de todas las propiedades "published". (Mira la ayuda sobre este método)

Saludos!

buildero_d 11-09-2005 00:27:35

Ok, muchas gracias... a investigar se ha dicho.

Saludos.:cool:

Crandel 11-09-2005 06:45:00

Pon el código en cada propiedad de la cual dependa, por ejemplo, tenes una propiedad A:
Código Delphi [-]
Ttuclase = class ()
private
  FA: integer;
  ....
  procedure SetA(value: integer);
  ...
public
  ...
published
  ...
  property A: integer write SetA read FA;
  ...
end;

implementation

procedure Ttuclase.SetA(value: integer);
begin
  if value <> FA then
  begin
    FA := value;
    LlamarFuncionPrivada;
  end;
end;
de esta forma se te va a ir construllendo tu Lista de acuerdo se vallan asignando las propiedades.


La franja horaria es GMT +2. Ahora son las 21:14:16.

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