Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Ejecutar lineas de codigo solo en tiempo de ejecucion (https://www.clubdelphi.com/foros/showthread.php?t=53454)

Cecil 21-02-2008 02:21:14

Ejecutar lineas de codigo solo en tiempo de ejecucion
 
Hola, como dice mi título, me gustaría saber como ejecutar líneas de código, pero solo en tiempo de ejecución, nada de que se ejecuten en tiempo de diseño. Mil gracias y un saludo.

Delphius 21-02-2008 02:29:23

:confused::confused::confused:

Hola Cecil,
Me dejaste confuso. ¿Que es lo que realmente deseas? Si nos explicas mejor el tema tal vez podamos hallar respuesta.

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.

Saludos,

Cecil 21-02-2008 02:32:56

Esque estoy modificando el TEdit y bueno, he creado una propiedad y al darle valor ejecuto un código que al estar en tiempo de diseño se realiza y solo quiero que lo haga en tiempo de ejecución. Perdona si no me he explicado bien :rolleyes: Gracias por tu respuesta.

egostar 21-02-2008 02:33:22

No será que quieres hacer un trace de tu código?

Las teclas magicas :D:D:D F4, F7, F8

Salud OS

Cecil 21-02-2008 02:35:05

No es eso, solo que, código que escriba solo se ejecute en tiempo de ejecución, nada de diseño.

egostar 21-02-2008 02:36:27

Cita:

Empezado por Cecil (Mensaje 267435)
No es eso, solo que, código que escriba solo se ejecute en tiempo de ejecución, nada de diseño.

Seria bueno que postearas algo de tu código para saber y entender que necesitas.

Salud OS

jachguate 21-02-2008 05:12:15

Es un caso típico de las necesidades del programador de componentes.

Código Delphi [-]
begin
  if not (csDesigning in ComponentState) then
    ShowMessage('Esto solo se muestra en tiempo de corrida');

Hasta luego.

;)

Cecil 22-02-2008 00:50:29

Cita:

Empezado por jachguate (Mensaje 267447)
Es un caso típico de las necesidades del programador de componentes.

Código Delphi [-]begin if not (csDesigning in ComponentState) then ShowMessage('Esto solo se muestra en tiempo de corrida');


Hasta luego.

;)


Mil gracias, eso era! Me ha solucionado el problema que tenia. Gracias a todos los que habeis posteado. Un saludo.

jachguate 22-02-2008 01:04:44

Bien, ya demostrada que era la solución... y para que las cosas no queden en el aire, quiero comentar:

Cita:

Empezado por Delphius (Mensaje 267429)
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.. :D

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.

;)

Delphius 22-02-2008 02:02:08

Muchas gracias jachguate por sacarme del pasillo de la ignorancia.
Recordaba haber visto algo sobre ComponentState, no recuerdo sin en un artículo de JM u otro sitio, pero algo recuerdo haber leído... mucha importancia no le di pues en ese entonces recién estaba comprendiendo las diversas cosas que tiene Delphi (y sigo aprendiendo).

Te re agradezco que te hayas tomado el tiempo en darme ese tironcito de orejas:D:)

Ya decia yo que sigo siendo un novato (no me pegues Caral:D) en esto.

Saludos,

Caral 22-02-2008 02:22:25

Hola Delphius
Delante de los Maestros: Jachguate, Roman, Dec, Lepe, Neftali, Seoane, cHackAll, Egostar, Eduarcol, Al Gonzalez, Jhonny, delphi.com.ar, Casimiro Notevi, ContraVeneno, Marcoszorrilla, RonPaplo y muchos otros, como no nos vamos a sentir novatos.
Solo hay que ver con las genialidades que salen de vez en cuando, ahi es cuando se nota lo que saben.:)
Yo solo digo, Soy Novato, pero muy novato delante de ellos, la diferencia es abismal.
No solamente como programadores, hay que ver la calidad humana de todos y el apoyo que dan indiscriminadamente.
Señores, me quito el sombrero delate de vosotros, maestros.
Saludos


La franja horaria es GMT +2. Ahora son las 01:44:59.

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