gevens bewaren

Status
Niet open voor verdere reacties.

snipeytje

Gebruiker
Lid geworden
20 mrt 2007
Berichten
398
ik heb een programmatje gemaakt. maar ik wil graag dat als het programma gesloten wordt. dat de gegevens (die de gebruiker heeft ingevoerd. ) bewaard blijven en bij de volgende startup er weer zijn. weet iemand hoe dit moet
 
Het eenvoudigste is om de gegevens bij het starten van het programma uit een textbestand te lezen (indien dit bestaat) en op het scherm te plaatsen, en bij het afsluiten van het programma het textbestand te (over)schrijven met de ingevoerde gegevens.

Ik zal morgen een voorbeeld opduikelen en posten.
 
iets meer info aub

Ik heb wel wat ideetjes, keb alleen wat meer info nodig.

Wat is het programmaatje (bestaand of zelf written), wat doet et.
Wat is de taal (als van toepassing), wat voor output bestandje wil je ?
Wat is de bedoeling van het voorgestelde ?

Henk
 
Sorry, even uit mijn gedachten gegaan... :rolleyes:

Bij deze dan:
Code:
Private Sub LeesGegevens()
  Dim int_FreeFile As Integer

  ' Eerstvolgende filebuffer opvragen
  int_FreeFile = FreeFile
  ' Bestand openen
  Open "Bestandsnaam" For Input As #int_FreeFile
  ' Als er gegevens voorhanden zijn...
  If Not EOF(int_FreeFile)
    ' Gegevens inlezen (in de veronderstelling dat elk
    ' gegeven op een aparte lijn staat in het bestand)
    Line Input #int_FreeFile, txt_TextBox1.Text
    Line Input #int_FreeFile, txt_TextBox2.Text
    Line Input #int_FreeFile, txt_TextBox3.Text
    Line Input #int_FreeFile, txt_TextBox4.Text
  End If
  Close #int_FreeFile
End Sub

Private Sub SchrijfGegevens()
  Dim int_FreeFile As Integer

  ' Eerstvolgende filebuffer opvragen
  int_FreeFile = FreeFile
  ' Bestand openen
  Open "Bestandsnaam" For Output As #int_FreeFile
  ' Gegevens wegschrijven (in de veronderstelling dat elk
  ' gegeven op een aparte lijn staat in het bestand)
  Print #int_FreeFile, txt_TextBox1.Text
  Print #int_FreeFile, txt_TextBox2.Text
  Print #int_FreeFile, txt_TextBox3.Text
  Print #int_FreeFile, txt_TextBox4.Text
  Close #int_FreeFile
End Sub

Je roept de subroutine LeesGegevens() op bij het starten van je programma, dit kan in het Load event van je scherm.
Bij het sluiten van je programma, Unload event, roep je de subroutine SchrijfGegevens() aan die er voor zorgt dat je gegevens bewaard worden.
 
Ik heb wel wat ideetjes, keb alleen wat meer info nodig.

Wat is het programmaatje (bestaand of zelf written), wat doet et.
Wat is de taal (als van toepassing), wat voor output bestandje wil je ?
Wat is de bedoeling van het voorgestelde ?

Henk
het programma is een browser tje en ik wil dat de gebruiker niet steeds bij het opstarten de website's in de combobox hoeft te zetten.
visual basic
 
visual basic snapt het niet echt.
Code:
Open "Bestandsnaam" For Input As #int_FreeFile
vooral dat niet en die hekjes
 
visual basic snapt het niet echt.
Welke fout geeft VB dan? :confused:

Code:
Open "Bestandsnaam" For Input As #int_FreeFile

Open is een VB commando, dat zou hij zeker moeten kennen.
"Bestandsnaam" moet je vervangen door de door jou gebruikte naam, vb: "URLs.txt"
For Input wil zeggen dat je enkel wil lezen uit het bestand.
As #int_FreeFile duidt op de te gebruiken buffer, zou VB ook moeten kennen...

Ik lees in je antwoord aan hotjhp dat je een combobox gebruikt. Wil je enkel de laatste URL daarin zetten of wil je een soort historiek in dat ding hebben?
Als je enkel de laatste URL wil plaats je hem gewoon in de Text property van de combobox. In het andere geval moet je de leesroutine een beetje aanpassen:
Code:
Private Sub LeesGegevens()
  Dim int_FreeFile As Integer
  Dim str_URL As String

  ' Eerstvolgende filebuffer opvragen
  int_FreeFile = FreeFile
  ' Bestand openen
  Open "Bestandsnaam" For Input As #int_FreeFile
  ' Als er gegevens voorhanden zijn...
  While Not EOF(int_FreeFile)
    ' Gegevens inlezen (in de veronderstelling dat elk
    ' gegeven op een aparte lijn staat in het bestand)
    Line Input #int_FreeFile, str_URL
    ' cbx_Adres is de combobox. Gebruik de naam die de combobox
    ' in jouw programma heeft !!!
    cbx_Adres..AddItem str_URL
  Wend
  ' De eerste entry uit de comboboxlijst in de combobox tonen
  cbx_Adres.Text = cbx_Adres.List(0)
  Close #int_FreeFile
End Sub

Om je URL's te bewaren overloop je de lijstentries van je combobox en zet die in het bestand:

Code:
Private Sub LeesGegevens()
  Dim int_FreeFile As Integer
  Dim int_Teller As Integer

  ' Eerstvolgende filebuffer opvragen
  int_FreeFile = FreeFile
  ' Bestand openen
  Open "Bestandsnaam" For Output As #int_FreeFile
  ' Combobox overlopen
  For int_Teller = 0 To cbx_Interessen.ListCount - 1
    ' lijstentry wegschrijven (Trim haalt alle spaties voor en achter van de string weg)
    Print #int_FreeFile, Trim(cbx_Adres.List(int_Teller))
  Next int_Teller
  Close #int_FreeFile
End Sub
 
maar ik wou het ook voor een ander progje gebruiken namelijk een om bestanden te openen.
 
hij snapt die hele regel niet. en ik heb het juiste bestand ingevoerd daar
 
Dat weet ik niet...
En klik ergens bij 'My Project' uit dan worden de setting direct bij het afsluiten opgeslagen van je programma. Ik weet niet presies waar..
 
Visual Studio 6 bevat VB-6 dat op de oude Windows technologie versies geënt is.
Visual Studio 2005 bevat VB-2005 (VB.NET) dat op de nieuwere .NET technologie van M$ gebaseerd is.
Dat heeft tot gevolg dat een aantal zaken zoals systeemaanroepen voor het werken met bestanden e.d. niet compatibel zijn en je dus niet zomaar VB-6 code in VB-2005 kunt uitvoeren. Sommige dingen gaan wel, andere niet.
Je kan info over de compatibiliteit en migratie (met de mogelijke problemen) van VB-6 naar VB.NET vinden op de MSDN-site van M$.

Je kan het een beetje vergelijken met twee dialecten van dezelfde taal... Limburgers en West-Vlamingen, ze praten allebei Vlaams, maar als ze hun dialect hanteren verstaan ze mekaar niet echt :D
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan