La Web del Programador: Comunidad de Programadores
 
    Pregunta:  15204 - CARGA DE ACTIVEX EN C++ BUILDER
Autor:  Alberto Ribagorda Martínez
Tengo un control ActiveX creado en C++ Builder a partir de un componente VCL. Mi problema es el siguiente: Tengo ciertos métodos que se tienen que realizar en el método Loaded del componente VCL, y que bajo este componente todo funciona perfectamente; el problema viene a la hora de generar el ActiveX, cuando se añade a un formulario el metodo Loaded se ejecuta en tiempo de diseño, y se vuelve a ejecutar cuando se ejecuta la aplicación que se está diseñando, dando un error debido a que la inicialización de mis metodos solo se deben hacer una vez. Muchas Gracias

  Respuesta:  Eduard Pascual Sáez
Hay un sistema muy simple para evitar que un proceso se ejecute más de una vez:

bool inicializado = false; //añade esta variable al control (ponla como private)
... //código
void loaded() { //ajusta el tipo de retorno y la lista de argumentos
if (inicializado) {
inicializado = true;
... //código de tu función
}
}

No es ninguna obra de arte, pero resuelve muchos problemas.
Espero que te sea de utilidad.
Atentamente,
Eduard Pascual