Pregunta: | 3004 - MACROS EN DELPHI |
Autor: | David Arboleyda |
PREGUNTA: ¿Quisiera saber como puedo tomar el Texto de un Edit como una operación aritmetica y no como una cadena: ´Var1+Var2´, donde Var1=27 y Var2=3, por consiguiente obtener 27+3? GRACIAS!!! |
Respuesta: | joel gonzalez |
para poder hacer esa convercion de datos debes de crear una variable del tipo de dato que necesitas es decir que si necesitas un dato integer la sintaxis es la siguiente procedure Tform1.Button1Click(Sender: TObject); Var x : integer ; begin x := strtoint(edit1.text) + strtoint(edit2.tex); end; con esto ya puedes suar cualqier operador dependiendo lo que quieras hacer con la informacion de los edit pero si en estos edit meten texto tendras un error en la ejecucion de la instruccion por lo que debes de usar tambien la propiedad onkeypress de los edits para asegurarte que siempre ingresen datos numericos si necesitas la sintaxis mandame un correo y te lo regreso con la sintaxis Saludos |
Respuesta: | Carlos Beltrá |
Lo único que tienes que hacer es convertir los tipos. Sabiendo que la propiedad Edit.Text es un string, sólo tienes que escribir: var var1, var2 : integer; begin var1 := strtoint(edit1.text); var2 := strtoint(edit2.text); end; Y ya tienes 2 variables numéricas. El problema es cuando var1 y var2 son reales, dobles o como quieras llamarlos, entonces el método se llama strtofloat. Este código no da ningún problema, y sé que se puede utilizar como mínimo, desde la versión 3.0 de Delphi. |
Respuesta: | José Oronas |
Existen varios componentes para evaluación de espresiones, en las RALib podes encontrar uno http://www.infa.ru/black/ralib.htm |