PDA

Ver la Versión Completa : no me recupera valor de variable...


Greco
24-08-2008, 10:39:17
Hola a todos...

Tengo un form que en el onCreate me lee un archivo .INI, de ahí extrae un dato y lo carga en la variable "ubicacion".


procedure TForm1.FormCreate(Sender: TObject);
...
ubicacion:= iniFile.ReadString('config', 'path1', '');
...
end;


luego tengo un Timer que, entre otras cosas, me debería leer el valor de la variable "ubicacion" pero no logra tomar el dato.


procedure TForm1.Timer1Timer(Sender: TObject);
...
Edit1.Text:=ubicacion;
...
end;


declaré la variable "ubicacion" en la interface pero no pasa nada, también probé declarandola en el timer pero tampoco logro leer el contenido de la variable.
Para probar puse en el onCreate, luego de asignar el valor a la variable, un EDIT con el contenido de la variable para poder comprobar que hice todo bien y efectivamente me muestra el dato correctamente, eso quiere decir que no hay problemas en la obtencion del dato desde el archivo ni de asignacion de valor a la variable...
...ahora si dentro del timer le asigno la variable al edit, éste me muetra vacío, osea no logra leer la variable.

Que estoy haciendo mal?? no logro entender el problema, no se mucho de programación asi que puede que haya algun "pequeño gran detalle" que se me esté escapando, talvez se hace de otra manera :p

Ruego disculpar mi ignorancia :D

Saludos

eduarcol
24-08-2008, 15:47:11
cuantas veces y en que sitios declaras la variable??

Greco
25-08-2008, 05:04:10
cuantas veces y en que sitios declaras la variable??

Hola Eduarcol, la variable la tengo declarada dentro del TForm1.FormCreate(Sender: TObject); en donde la ocupo por que le asigno el dato que leo desde el archivo.ini

Luego la declaré dentro del procedure TForm1.Timer1Timer(Sender: TObject); donde la tengo que utilizar y leer su valor.


procedure TForm1......
var
ubicacion: String;
begin
...


Pero no pasa nada.
Tambien la tengo declarada en la interface y justamente revisando ahora mientras redacto este mensaje di con el problema...
Como dije recien, la tenía declarada en la interface, donde se declaran las variables globales y luego la tenia declarada en el formcreate, eliminé esta ultima declaracion dejando solo la global y ahora me funciona bien.

Gracias.

Saludos