PDA

Ver la Versión Completa : Ejecutar procedimiento en ventana main


JULIPO
24-10-2007, 22:38:28
Tengo un programa desarrollado en bsd 2006 donde tengo una ventana main que posee un procedimiento para realizar un calculo matematico coloco una ventana modal requiero que cuando presione un boton en la ventana modal pueda ejecutar el procedimiento en la ventana main.

como lo hago.

julipo

poliburro
24-10-2007, 22:42:24
Pues, declaras como público el método del form main.

y lo invocas como

FormMain.Método

Suerte

JULIPO
26-10-2007, 19:49:23
Reciban un cordial saludo

Realice este procedimiento pero me parece un mensaje de error

[Pascal Error] contpers.pas(177): E2033 Types of actual and formal var parameters must be identical

el procedimiento es el siguiente


procedure tmonitor.marcar(var numero:string);
begin
apdtapidevice1.Dial(numero);
end;


desde la ventana modal lo llamo

Var
monitoria:tmonitor;
begin
monitoria.marcar(edit1.text);
end;

Agredezco sus respuestas y ayuda en el tema

julipo

dec
26-10-2007, 20:21:42
Hola,

Lo que ocurre es que el procedimiento requiere un parámetro pasado como referencia, lo que se indica mediante la palabra reservada "var" antes del parámetro. Esto es, una variable, concretamente, que el procedimiento pueda modificar, llegado el caso, y cuyos cambios se mantengan incluso después de ejecutado el procedimiento en cuestión.

Como tratas de pasarle un "Edit", sencillamente, el compilador te está diciendo que el tipo de parámetro se requiere tal y como el método necesita. Es decir, la solución pasaría por declarar una variable de tipo "string", asignar a esta el "texto" del "Edit", y pasar al procedimiento dicha variable como parámetro, en lugar del propio "Edit".