[Lazarus-es] Duda sobre declaración y el alance de variables en los formularios
Maxi
maximiliano.duarte en gmail.com
Mar Sep 3 22:34:38 CEST 2013
El día 3 de septiembre de 2013 16:47, Ismael L. Donis Garcia
<ismael en citricos.co.cu> escribió:
> Tengo una gran duda sobre la declaración de variables en formulario.
>
> Si declaro una variable de la siguiente forma:
>
> implementation
>
> var
> ddebe, dhaber: double;
>
> y llamo el formulario de la siguiente forma:
>
> f:=form1.Create(Self);
> f.ShowModal;
> f.Free;
>
> Y dentro del formulario le doy valores a las variables ddebe y dhaber y
> cierro el formulario con self.close;
>
> Cuando entro de nuevo al formulario se me conservan los valores de las
> variables ddebe y dhaber.
>
> Ahora mi duda:
>
> Si yo cierro el formulario porque se me mantiene el valor de las variables
> que yo había calculado en la entrada anterior?
> Este valor no debería ser =0 al volver a entrar de nuevo al formulario?
> Cual es la causa de este comportamiento?
>
> Desde ya Gracias
> ========
> | ISMAEL |
> ========
> Only for the small landowners and Cubans companies
> Website: www.sisconge.byethost15.com
> www.sisconge.hol.es
>
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
esta mal declarado y usado.
Deberias hacerlo asi:
TformX
.
.
.
.
Private
ddebe, dhaber: double;
end;
Si lo declaras en la implementacion es como global al archivo.
Self es el objeto actual en el momento de llamarlo, y le estas
diciendo que Form1 se cree como pariente del objeto que trae Self. El
destructor del objeto llamador se encargaria de destruir a Form1.
yo lo uso de una forma mas segura
with Tform1.Create(nil)
try
Showmodal;
finally
Free;
end;
o
with Tform1.Create(nil)
try
Showmodal; // y en el evento oncanclose colocas: Action := caFree;
except
Free;
end;
--
El que pregunta aprende, y el que contesta aprende a responder.
No a la obsolecencia programada:
http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml
Linux User #495070
http://domonetic.com/blog
More information about the Lazarus-es
mailing list