Ver Mensaje Individual
  #8  
Antiguo 22-02-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
Bien, ya demostrada que era la solución... y para que las cosas no queden en el aire, quiero comentar:

Cita:
Empezado por Delphius Ver Mensaje
Que yo sepa todas la líneas de código se ejecutan en modo de ejecución, que el compilador en modo de diseño chequee algunas cosas y optimize el código no quiere decir que en modo de diseño se ejecute el código.
Delphius:

Cuándo programas componentes, estos se compilan en un paquete (bpl) y se integran al IDE. De esta manera, tu código si que se ejecuta en tiempo de diseño. Es muy común, cuándo estas en esta tarea, que el código que da comportamiento a un componente resulte innecesario y a veces hasta nocivo cuándo se ejecuta en tiempo de diseño.

De hecho, en ciertos métodos, he llegado a iniciar con:
Código Delphi [-]
  if (csDesigning in ComponentState) then Exit;

Para que nada de esto se ejecute en tiempo de diseño. El que me viene en mente ahora, por ejemplo, es uno que reasigna los eventos de un DataSet..

Hacer eso en tiempo de diseño resultaría perjudicial para la aplicación, pero en tiempo de corrida, creeme, es perfecto.

Así, el programador de componentes y de manera mas general, el programador bibliotecario, cuyo usuario es otro programador y que muchas veces se ve en la necesidad de interactuar con el IDE de delphi o con las aplicaciones en tiempo de diseño debe tener en cuenta estas cosas.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita