Gemme indstillinger i en fil

Tags:    delphi

Hej allesammen!
I mit program har man en valgmulighed - i form af en TCheckBox - om man vil have et TPanel til at være enten Visible := True eller Visible := False. Hvordan kan jeg gemme denne indstilling, sådan at hvis brugeren sidste gang han startede programmet, valgte egenskaben Visible := True, så er denne indstilling "husket" af programmet? Og hvilket filformat er det bedste til "sådan noget"?

Mvh. /Martin



10 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
>Jamen, det virker jo bare! Men i mit program ligger den her TCheckBox og TEdit'en i en form for sig, nemlig til indstillinger. Hvordan får jeg så f.eks et TPanel på min MainForm til at blive enten Visible := False eller Visible := True afhængigt af om TCheckBox'en er Checked eller ej?

Enten kan du læse værdien direkte fra registreringsdatabasen, hver gang du vil bestemme om dit Panel skal være synligt, eller også kan du ved programmets indlæsning, sætte checkboxen på din indstillingsform, og så simpelthen sætte dit Panels synlighed efter den!

Form1.Panel1.Visible := IndstillingForm.CheckBox1.Checked;

--
Mvh.

Kasper (TSW)
Webmaster



User
Bruger #353 @ 30.08.01 11:43
<quote>Hej allesammen!
I mit program har man en valgmulighed - i form af en TCheckBox - om man vil have et TPanel til at være enten Visible := True eller Visible := False. Hvordan kan jeg gemme denne indstilling, sådan at hvis brugeren sidste gang han startede programmet, valgte egenskaben Visible := True, så er denne indstilling "husket" af programmet? Og hvilket filformat er det bedste til "sådan noget"?

Mvh. /Martin</quote>

Læs lidt på AssignFile filformatet er ligegyldigt du kan lave dit eget eller bruge et kendt *.txt



<quote>
Læs lidt på AssignFile filformatet er ligegyldigt du kan lave dit eget eller bruge et kendt *.txt</quote>

Hvad mener du? Jeg vil bare gerne lære hvordan man gemmer instillingerne i en fil.
Mvh. /Martin



>>Læs lidt på AssignFile filformatet er ligegyldigt du kan lave dit eget eller bruge et kendt *.txt

Hmmm, det er nok lidt nemmere at bruge INI filer eller registreringsdatabasen, vil jeg mene :-). Martin, tag et kig på min artikel om registreringsdatabasen, den beskriver vist rimelig præcist det du ønsker!

http://www.udvikleren.dk/vis_artikel.php4?id=3

--
Mvh.

Kasper (TSW)
Webmaster



<quote>
Hmmm, det er nok lidt nemmere at bruge INI filer eller registreringsdatabasen, vil jeg mene :-). Martin, tag et kig på min artikel om registreringsdatabasen, den beskriver vist rimelig præcist det du ønsker!
</quote>

Jamen, det virker jo bare! Men i mit program ligger den her TCheckBox og TEdit'en i en form for sig, nemlig til indstillinger. Hvordan får jeg så f.eks et TPanel på min MainForm til at blive enten Visible := False eller Visible := True afhængigt af om TCheckBox'en er Checked eller ej? Jeg har prøvet lidt, men kan vist ikke rigtig finde ud af det. Håber nogle kan hjælpe mig...

Mvh. /Martin



<quote>Enten kan du læse værdien direkte fra registreringsdatabasen, hver gang du vil bestemme om dit Panel skal være synligt, eller også kan du ved programmets indlæsning, sætte checkboxen på din indstillingsform, og så simpelthen sætte dit Panels synlighed efter den!

Form1.Panel1.Visible := IndstillingForm.CheckBox1.Checked;</quote>

Når jeg gør sådan som du har beskrevet, og derefter prøver at køre programmet, skriver Delphi 3 denne fejlmeddelelse:

<quote>Error
Project Test.exe raised exception class EAccessViolation with message 'Access violation at adress 004438BB in module 'TEST.EXE'. Read of address FFFFFFFF'. Process stopped. Use Step or Run to continue.</quote>

Den farver ligeledes ovennævnte sætning blå og sætter en grøn pil ud for sætningen. Hvad er galt, og hvad skal jeg gøre ved det???

Mvh. /Martin



>Når jeg gør sådan som du har beskrevet, og derefter prøver at køre programmet, skriver Delphi 3 denne fejlmeddelelse:

Er din Indstillingsform createt? Ellers er det nok derfor! Alle dine forms bliver automatisk sat til at blive createt sammen med din mainform, men hvis du har flyttet dem over til at du selv creater dem, er det måske derfor. Ellers kan jeg ikke lige gennemskue hvorfor den kode skulle give fejl!

--
Mvh.

Kasper (TSW)
Webmaster



<quote>Er din Indstillingsform createt? Ellers er det nok derfor! Alle dine forms bliver automatisk sat til at blive createt sammen med din mainform, men hvis du har flyttet dem over til at du selv creater dem, er det måske derfor. Ellers kan jeg ikke lige gennemskue hvorfor den kode skulle give fejl!</quote>

Nej, det er ikke problemet. Min IndstillingForm står klart og tydeligt under <quote>Auto-create forms</quote> listen. Jeg har ingen anelse om hvad det kan være! Er der nogle Udviklere her, som kan???

Mvh. /Martin



UNDSKYLD!!! Jeg har lavet en kæmpe bommert! Jeg har hele tiden forsøgt at Create min form istedet for bare at skrive Form1.Show;... UNDSKYLD, og TAK for svaret, Kasper!

Mvh. /Martin







t