Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Equivalente a ExecuteStatement (https://www.clubdelphi.com/foros/showthread.php?t=57512)

gallipi 18-06-2008 12:06:33

Equivalente a ExecuteStatement
 
ExecuteStatement es una funcion q existe en visual basic y q permite ejecutar comandos definidos en un string. Ejemplo:

Código Delphi [-]
code: string;

code:='form1.button1.caption:= pepe';

ExecuteStatement(code);

Y de esta forma asigna el valor de la propiedad

Desconozco si existe alguna funcion en Delphi q permita realizar algo similar.
Actualmente utilizo la funcion FindComponent y lluego hago yo la asignacion.

¿Existe algo parecido?

coso 18-06-2008 12:22:39

Visual basic es semi-interpretado. Dudo que exista algo asi en Delphi. Eso si, seguro que tal como dices se puede crear un parser mas o menos elaborado mediante el FindComponent, SetOrderProp, etc...

gallipi 18-06-2008 12:26:59

ok, gracias!!

En cualquier caso mediante RTTI, puedo asignar valores a las propiedades en tiempo de ejecucion, sin tener q usar el FindComponent.

Sin embargo, se me antoja interesante disponer de una funcion del estilo de ExecuteStatement.

Caro 18-06-2008 16:19:39

Hola gallipi, yo también manejaba antes de delphi visual basic y me gustaba colocar una instrucción en una cadena y despues ejecutarla, en delphi estuve buscando algo parecido (yo necesitaba, teniendo el nombre de un formulario como cadena poderle hacer un show), la verdad es que no hay para hacerlo directamente, ya que delphi es un lenguaje compilado, mientras que visual basic es interpretado. Tu tienes que hacerte tu propía función, ya sea usando RTTI, o como te mensiona el amigo coso con FindComponent, SetOrderProp,...

Saluditos


La franja horaria es GMT +2. Ahora son las 12:52:41.

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