![]() |
Re: Einstellungen speichern, wie?
nimm ne TIniFile und schau dir WriteBool(ean) [bin mir nciht ganz sicher], WriteString... an.
Das ist ne Delphi-Standard-Kompo und für diesen Zweck wie geschaffen! |
Re: Einstellungen speichern, wie?
hmm.. irgendwie hab ich da was grundlegendes nicht begriffen. kann mir jemand auf die sprünge helfen?
ich habe hier ein Formular für die Einstellungen zum Hauptprogramm: ![]() ich will beim klick auf "Einstellungen Speichern" die einstellungen (ob die checkboxen checked sind, oder nicht). beim erneuten starten des programmes soll diese datei ausgelesen werden und dementsprchend die checkboxen checked sein... allerdings komme ich nicht mit den WriteBool-Anweisungen klar... wie benutze ich die in diesem fall? also so funktioniert es schon mal nicht: :roll:
Delphi-Quellcode:
(cCheckBox4 --> "Statusleiste anzeigen")
Ini.WriteBool( 'Programm', 'Stausleiste', CheckBox4 = CheckBox4.checked );
wie macht man das? Gruß, dopeline |
Re: Einstellungen speichern, wie?
Delphi-Quellcode:
Kuck doch mal in der Hilfe. :roll:
Ini.WriteBool( 'Programm', 'Stausleiste', CheckBox4.checked );
|
Re: Einstellungen speichern, wie?
ähm... ja... :oops: :oops: :oops:
danke! jetzt wird es in die datei geschrieben. super! so, nun zum einlesen (im OnCreate-Ereignis des Hauptformulars)... denn da gibts ne tolle fehlermeldung beim starten des progs. "Zugriffsverletzung in der Adresse ..." und er verweist mich an die stelle, wo ich versucht habe die daten einzulesen:
Delphi-Quellcode:
wo liegt hier der fehler? habe heute fußballgroße tomaten auf den augen :cyclops:
Begin
Ini := TIniFile.Create(ExtractFilePath(ParamStr(0))+'\options.cfg'); try if Ini.ReadBool( 'Programm', 'Stausleiste', false ) then FormOptionen.CBStatus.checked; .... // hier folgen noch mehr aufrufe... finally Ini.Free end; dopeline |
Re: Einstellungen speichern, wie?
Delphi-Quellcode:
So hätte ich es gemacht.
CheckBox4.Checked := ini.ReadBool(...);
|
Re: Einstellungen speichern, wie?
meinst du so?:
Delphi-Quellcode:
das funktioniert leider nicht. da kommt die gleiche fehlermeldung beim ausführen....
FormOptionen.CheckBox4.Checked := ini.ReadBool( 'Programm', 'Stausleiste', false );
Gruß, dopeline |
Re: Einstellungen speichern, wie?
Heißt die Sektion wirklich
Zitat:
|
Re: Einstellungen speichern, wie?
in deinem code fehlt noch ein "end;", ka ob du es nur hier im forum vergessen hast
|
Re: Einstellungen speichern, wie?
also jetzt mal ganz komplett:
wenn ich in dem options-fenster auf speichern klicke passiert folgendes:
Delphi-Quellcode:
und im OnCreate-Ereignis kommt das:
procedure TFormOptionen.BitBtn2Click(Sender: TObject);
var Ini: TIniFile; begin Ini := TIniFile.Create(ExtractFilePath(ParamStr(0))+'\options.cfg'); try Ini.WriteString( 'Programm', 'Pfad', Verz ); Ini.WriteBool( 'Programm', 'Statusleiste', CBStatus.checked ); Ini.WriteBool( 'Programm', 'Datum-Zeit', CBDateTime.checked ); Ini.WriteBool( 'Programm', 'Geburtstag', CBGeburt.Checked ); Ini.WriteBool( 'Programm', 'Deutsch', RBDeutsch.checked ); Ini.WriteBool( 'Programm', 'Englisch', RBEnglisch.checked ); Ini.WriteBool( 'Tabelle', 'Tabelle-vertikal', CBVertLine.checked ); Ini.WriteBool( 'Tabelle', 'Tabelle-horizontal', CBHorzLine.checked ); Ini.WriteBool( 'Tabelle', 'Tabelle-spalten', CBSpalten.checked ); finally Ini.Free; end; end;
Delphi-Quellcode:
Ini2, weil ich noch eine andere variable namens Ini benutze.
procedure TFormHaupt.FormCreate(Sender: TObject);
var Ini2 : TIniFile; begin Ini2 := TIniFile.Create(ExtractFilePath(ParamStr(0))+'\options.cfg'); try FormOptionen.CBStatus.Checked := ini2.ReadBool( 'Programm', 'Statusleiste', false ); FormOptionen.CBDateTime.checked := Ini2.ReadBool( 'Programm', 'Datum-Zeit', false ); FormOptionen.CBGeburt.checked:= Ini2.ReadBool( 'Programm', 'Geburtstag', false ); FormOptionen.RBDeutsch.checked :=Ini2.ReadBool( 'Programm', 'Deutsch', false ); FormOptionen.RBEnglisch.checked := Ini2.ReadBool( 'Programm', 'Englisch', false ); FormOptionen.CBVertLine.checked := Ini2.ReadBool( 'Tabelle', 'Tabelle-vertikal', false ); FormOptionen.CBHorzLine.checked := Ini2.ReadBool( 'Tabelle', 'Tabelle-horizontal', false ); FormOptionen.CBSpalten.checked := Ini2.ReadBool( 'Tabelle', 'Tabelle-spalten', false ); finally Ini2.Free end; irgendwie will das nicht so, wie ich will :x Gruß, dopeline |
Re: Einstellungen speichern, wie?
bei dem im OnCreate Teil fehlt ein "End". Nur hier oder auch in deinem Code?
Gibts die Optionen-Form schon, wenn deine OnCreate-Funktion aufgerifen wird? Was genau geht schief? Mir persönlich fällt so schnell kein Fehler auf... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz