Hola !
Tengo un pequeño problemita que no he podido resolver (tal vez entender) espero me puedan ayudar:
En una aplicacion tengo un Form1 y DataModule1. Al iniciar Form1 ejecuto una consulta cuyo componente y codigo esta en DataModule1 por lo tanto en el
Source del proyecto CREO
primero el DataModule y luego el Form1. Hasta aqui todo correcto. Todo funciona bien, la consulta se ejecuta adecuadamente. Mi problema tiene que ver con otra parte de codigo dentro del DataModule1 en el cual abro SI existe un fichero INI, en caso contrario lo creo. El fichero se crea adecuadamente, pero los datos de ese fichero los necesito ver en unas Label de Form1 sin embargo esas Labels siempre estan vacias; he probado varias "soluciones" pero no encuentro el problema. Mi codigo:
El Source
{$R *.res}
begin
Application.Initialize;
Application.Title := 'TCP WinTool';
Splash := TSplash.Create(Application);
Splash.Show;
Splash.Update;
Principal.SplashFormHandle := Splash.Handle;
Application.CreateForm(TMDatos, MDatos);
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
al crear el DataModule
procedure TMDatos.DataModuleCreate(Sender: TObject);
var
i: integer;
begin
//Establecemos la ruta de la aplicacion
RutaAPP := ExtractFilePath(ParamStr(0));
//Creamos el archivo de Configuracion
ConfigTCP := TIniFile.Create(RutaAPP + 'ordenCfg.ini');
if fileexists('ConfigTCP') then
with ConfigTCP do
begin
try
Form1.Label1.Caption := readstring('Bas1', 'Orden', '1');
Form1.Label2.Caption := readstring('Bas1', 'Producto', '1');
Form1.Label12.Caption := readstring('Bas1', 'Socio', '1');
finally
ConfigTCP.Free;
end;
end
else
with ConfigTCP do
begin
try
for i := 1 to 6 do
begin
ConfigTCP.WriteString('Bas' + IntToStr(i), 'Orden', IntToStr(i));
ConfigTCP.WriteString('Bas' + IntToStr(i), 'Producto', IntToStr(i));
ConfigTCP.WriteString('Bas' + IntToStr(i), 'Socio', IntToStr(i));
end;
finally
ConfigTCP.Free;
end;
end;
//Mas codigo
end;
al crear el form1
//Al crearse el formulario
procedure TForm1.FormCreate(Sender: TObject);
begin
Orden1 := Label1.Caption;
Codigo1 := Label2.Caption;
Socio1 := Label12.Caption;
end;
He eliminado trozos de codigo que no va al caso, les agradesco la ayuda que me puedan prestar.