Avatar billede kingguro Nybegynder
31. december 2000 - 02:10 Der er 14 kommentarer og
1 løsning

Kan windows huske min felter??

Hvordan han jeg få windows til at huske hvad der stod i mine llistbox\'er og edit\'ere når jeg lukker programmet ned. Hvordan kan jeg få dem til at stadig stå der når det tændes igen??
Avatar billede stigc Nybegynder
31. december 2000 - 02:13 #1
det skal du selv programmere. Læg\' indholdet i en txt-fil eller regsitreringsdatabasen, og hent det igen når programmet starter op!
Avatar billede erikjacobsen Ekspert
31. december 2000 - 02:13 #2
Jeg lavede en gang et program, hvor vinduernes placering blev gemt i en ini-fil.
Du kan evt. også - nu det hedder W95+ - bruge registreringsdatabasen.
Avatar billede pellelil Nybegynder
31. december 2000 - 11:59 #3
Ini\'filer og registrerings databasen vil være det rigtige. Hvis du ikke selv vil skrive det der skal til kan du med fordel kigge på RxLib (http://www.rxlib.com/). RxLib er em samling af freeware/fullsource componenter. Blandt disse finder du en ved navn TFormStorage. Indsæt denne på din form og sæt properties for \"iniFileName\", \"IniSection\", \"RegistryRoot\" og \"UseRegistry\". Hvis UseRegistry er sat til True så bruges registrerings databasen eller bruges en INI-fil. Dernæst dobbelt klikker du bare på din TFormStorage og du kan vælge hvilke componenter/properties der skal gemmes/hentes.
Avatar billede bustermaniac Nybegynder
01. januar 2001 - 20:45 #4
Jeg synes helt klart at du selv skal prøve at lave det. Delphi har en masse hjælp inkluderet (også mange eksempler), så derfor burde ikke være svært at finde ud af det.

Der er flere måder du kan gøre det på. i den første skal du bruge Delphis Tstringlist til at gemme indholdet af din listboxes (evt. kan Tstring også bruges). Der kan du så oprette en tekstfil til hvert af dine listboxes, som så kan have næsten ubegrænsede værdier med meget lidt kode.

Løsning nummer to er kan laves på to måder. Du kan selv bestemme hvad du vælger, efter hvad du synes er smartest. Ved at bruge Tinifile eller Tregistry kan du lave dine ini-filer/få adgang til regdb\'en. Der kan du så også gemme indholdet af dine listboxes, men der kan gemmes meget mere end det. fx. kan du gemme indholdet af dine editboxes eller helt andre ting (vinduers/komponenters placering....). Held og lykke.
Avatar billede microtec Nybegynder
03. januar 2001 - 15:36 #5
Hvis det skal laves helt efter \"bogen\" skal der gemmes i regsitreringsdatabasen som erikjacobsen skriver.
INI-filer er et levn fra de gamle 16-bit Windows 3.x dage.
Ved godt der er mange der stadig benytter INI-filer, men det er ikke helt efter Microsofts anbefalinger til 32-bit programmer.
Avatar billede stigc Nybegynder
03. januar 2001 - 21:03 #6
jeg til hver tid gemme sådanne små oplysninger i en ini-fil eller txt-fil!
Avatar billede microtec Nybegynder
03. januar 2001 - 22:24 #7
stigc >> Tja. Det gøres nu på næsten samme måde i regsitreringsdatabasen når man benytter Delphi.
Det er slet ikke svært, så hvorfor ikke benytte regsitreringsdatabasen som er beregnet til formålet.
Avatar billede pellelil Nybegynder
04. januar 2001 - 07:38 #8
Personligt ville jeg aldig vælge en TXT fil, da vi netop har INI-filer og Registreringsdatabasen til dette formål (i min bog hører TXT-filerne til de gode gamle DOS-dage). Men om man skal vælge INI-filer eller registrerings databasen er en smagssag.

Fordele ved INI-filer:
----------------------
Hvis der er \"stor sansynlighed\" for at slutbrugerne skal kunne ændre i opsætningerne så vil jeg vælge en INI-fil (de fleste \"normale\" brugere er mere fortrolige med en tekst editor frem for RegEdit). Ligeledes hvis det skal være nemt for brugere at \"udveksle opsætninger\" (eller flytte disse til andre maskiner) så \"vinder\" INI-filer (oplysninger fra Registrerings databasen kan også nemt flyttes - for dem der er fortrolige med denne).

Fordele ved REG-DB:
-------------------
Hvis der er tale om oplysninger som 100% varetages af / og kan blive sat op direkte i applikationen så kan man bruge registrerings databasen. Her er de bedre \"skjult\" for brugeren og de er ikke så nemme at \"komme til\" at slette som en ekstern INI-fil kan være. Ligeledes hvis disse \"opsætninger\" skal være bruger afhængige så kan man bare bruge HKEY_CURRENT_USER hvorved man ikke selv skal bekymre sig om mere (det samme med INI-filer ville kræve noget mere programmering).
Avatar billede stigc Nybegynder
04. januar 2001 - 19:38 #9
pellelil >>

der er vel ingen forskel på en ini-fil og en txt-fil andet end efternavnet ?????????
Avatar billede microtec Nybegynder
04. januar 2001 - 19:41 #10
stigc >> Der er meget stor forskel på en ini-fil og en txt-fil. En ini-fil er opbygget efter med et helt specielt format.
Delphi har nogle virkelig gode værktøjer til at læse og skrive data i en INI-fil (og også i Registreringsdatabasen). Hvis du benytter en txt-fil skal du selv kode alt til læsning/skrivning og fejlhåndtering.
Enig med pellelil i at txt-filer høre DOS-tiden til.
Avatar billede microtec Nybegynder
13. februar 2001 - 14:31 #11
kingguro >> Lukker du ikke lige spørgsmålet?
Der er kommet flere forslag til løsning :o)
Avatar billede microtec Nybegynder
28. april 2001 - 00:55 #12
kingguro >> Luk nu lige det spørgsmål, så det kan komme op til de andre, der er besvarret ;o)
Avatar billede kingguro Nybegynder
07. juni 2001 - 14:29 #13
JEg har selv fundet ud af det!!
Avatar billede bustermaniac Nybegynder
07. juni 2001 - 15:23 #14
Var det så ikke en ide at dele det med os...Det plejer at være skikken :)
Avatar billede microtec Nybegynder
07. juni 2001 - 15:37 #15
kingguro >> Har du selv været næsten et halvt år om det ;o)

Mon ikke du har benyttet en af ovenstående løsninger. Det kan vist ikke laves meget anderledes.
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