Avatar billede armena Nybegynder
24. oktober 2002 - 19:04 Der er 11 kommentarer og
1 løsning

Gemme i en ini fil

jeg er igang med en browser og har lavet sådan at være gang man besøger en side så gemmer den det i en combobox, men næste gang jeg starter programmet så er det jo ikke gemt, hvordan gemmer jeg hele listen i en ini fil og hvordan loader jeg den??
Avatar billede borrisholt Novice
24. oktober 2002 - 19:07 #1
Kig på klassen TIniFile. Den er meget nem at gå til

Jens B
Avatar billede spectre Nybegynder
24. oktober 2002 - 19:09 #2
jeg ville selv foretrække at gemme værdierne i registreringsdatabasen...

så skal du kigge på klassen TRegistry
Avatar billede armena Nybegynder
24. oktober 2002 - 19:16 #3
kan i ikke give mig source ?
Avatar billede borrisholt Novice
24. oktober 2002 - 19:16 #4
Eventuelt TRegInifile ...

Jens B
Avatar billede armena Nybegynder
24. oktober 2002 - 19:24 #5
kan man ikke lave sådan:
i form.close:
combobox1.items.savetofile(C:\hjemmesider.txt);
I form.create:
combobox1.items.loadfromfile(C:\hjemmesider.txt);
Avatar billede kfz Nybegynder
24. oktober 2002 - 20:33 #6
lav en memo med visible = false

i form.close
memo1.lines := combobox1.items;
memo1.lines.savetofile('C:\hjemmesider.txt');

i form.create
memo1.lines.loadfromfile('C:\hjemmesider.txt');
combobox1.items := memo1.lines;
Avatar billede kfz Nybegynder
24. oktober 2002 - 20:38 #7
i stedet for memo, så brug en variabel af typen tstrings

procedure TForm1.FormCreate(Sender: TObject);
var
list: tstrings;
begin
list := tstrings.Create;
list.LoadFromFile('C:\Hjemmesider.txt');
combobox1.Items := list;
list.Free;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
list: tstrings;
begin
list := tstrings.Create;
list := combobox1.Items;
list.SaveToFile('C:\Hjemmesider.txt');
list.Free;
end;
Avatar billede armena Nybegynder
25. oktober 2002 - 15:05 #8
kfz>> når man starter min browser aller første gang, melder den fejl og siger: Can not open C:\hjemmesider.txt! Kan jeg ikke gøre sådan at hvis den ikke kan finde C:\hjemmesider.txt så skal den oprette en?? hvis ja .. hvordan ??
Avatar billede kfz Nybegynder
25. oktober 2002 - 15:09 #9
procedure TForm1.FormCreate(Sender: TObject);
var
list: tstrings;
begin
if not fileexists('C:\Hjemmesider.txt') then
exit;
list := tstrings.Create;
list.LoadFromFile('C:\Hjemmesider.txt');
combobox1.Items := list;
list.Free;
end;
Avatar billede armena Nybegynder
25. oktober 2002 - 16:20 #10
kfz>>Det her melder den:
" project TarZin.exe raised exception class EAAbstractError with message 'Abstract Error'. Process stopped use step or run to continue. "
Avatar billede kfz Nybegynder
25. oktober 2002 - 19:15 #11
ved ikke hvorfor den melder fejl, men den kommermed nogle warnings ved kompilering, mht list, så bare brug en memo istedet

procedure TForm1.FormCreate(Sender: TObject);
var //slet
memo1: tmemo; //slet
begin
if not fileexists('C:\Hjemmesider.txt') then
exit;
memo1 := tmemo.Create(form1); //slet
memo1.Parent := form1; //slet
memo1.lines.LoadFromFile('C:\Hjemmesider.txt');
combobox1.Items := memo1.lines;
memo1.Destroy; //slet
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var //slet
memo1: tmemo; //slet
begin
memo1 := tmemo.Create(form1); //slet
memo1.Parent := form1; //slet
memo1.Lines := combobox1.Items;
memo1.Lines.SaveToFile('C:\Hjemmesider.txt');
memo1.destroy; //slet
end;

du kan også bare sætte en memo på formen og sætte visible til false, i så fald slet alle linier med //slet udfor
Avatar billede armena Nybegynder
26. oktober 2002 - 12:39 #12
hehe, jeg fik det til at virke ved at skrive:
combobox1.items.loadfromfile(C:\hjemmesider.txt);
combobox1.items.savetofile(C:\hjemmesider.txt);

lukker :D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester