dynamiczne .... zapisywanie ?

0

jezeli na formie utworzony zostanie dynamicznie np panel to gdy uruchomie program raz jeszcze panela juz nie bedzie. Jak zapisac jego pozycje kolor itd w pliku aby potem moc go <ort>otczytac </ort>(ten plik) i ustawic go na formie ?

0

sam musisz sobie to wykombinowac co i jak zrobic. Moze jakies wartosci oddzielone np znakiem ";" a potem wczytywane przez odpowiedni kod

0

chodzi o to ze jakbym umial sam sobie to wykombinowac to bym nie pisal postu :) wiem ze jakos zapisac jakos oddzielic i jakos wczytac ale JAK :p pzdr

0
var f:textfile;

assignfile(f,'plik');
rewrite(f);
write(f,inttostr(panel.height)+' '+);
write(f,inttostr(panel.width)+' '+);
write(f,inttostr(panel.top)+' '+);
write(f,inttostr(panel.left)+' '+);
...
closefile(f);

----------------

var f:textfile; h,w,t,l:integer;

assignfile(f,'plik');
reset(f);
readln(f,h,w,t,l ... );
closefile(f);
panel:=tpanel.create();
panel.parent:=form1;
panel.height:=h;
panel.width:=w;
panel.top:=t;
panel.left:=l;
...
0

Albo za pomocą słynnych już plików INI:

Zapis:

INI := TINIFile.Create(ExtractFilePath(Application.ExeName) + 'plik.ini');
INI.WriteBool('Sekcja', 'FullSize', Boolean(WindowState = wsMaximized));
INI.WriteInteger('Sekcja', 'Top', Top);
INI.WriteInteger('Sekcja', 'Left', Left);
INI.WriteInteger('Sekcja', 'Height', Height);
INI.WriteInteger('Sekcja', 'Width', Width);
INI.Free;

Odczyt:

if INI.ReadBool('Sekcja', 'FullSize', False) then
    WindowState := wsMaximized
  else
  begin
    Top := INI.ReadInteger('Sekcja', 'Top', 130);
    Left := INI.ReadInteger('Sekcja', 'Left', 149);
    Height := INI.ReadInteger('Sekcja', 'Height', 398);
    Width := INI.ReadInteger('Sekcja', 'Width', 609);
  end;
0

albo za pomocą strumieni :) (

WriteComponent

i ReadComponent

)
0

Albo za pomocą XML'a :P

1 użytkowników online, w tym zalogowanych: 0, gości: 1