Nieuwe Instelling Maken

Status
Niet open voor verdere reacties.

Tim066

Gebruiker
Lid geworden
27 mei 2010
Berichten
120
Ik ben bezig met ene programma maar daarin kunnen mensen zelf dingen toevoegen die moeten worden opgeslagen...! 'maar hoe kunnen mensen zelf een instelling maken en via een listbox deze instellingen weer ophalen...?

Hoop dat t genoeg info is...!
Alvast Bedankt...!
 
Je kan data/instellingen opslaan in een variabele, array, database.

Daarna kan je alle waarden uit de array of database in een 'dropdownlist' stoppen.
 
Weet je wat Application Settings zijn? Daar kun je een setting aanmaken van het zogenoemde System.Collections.Specialized.StringCollection.

Oftwel een stringarray.

Die kun je dan zo ophalen:

Code:
For Each item In My.Settings.NaamVanSetting
ListBox1.Items.Add(item)
Next
 
Weet je wat Application Settings zijn? Daar kun je een setting aanmaken van het zogenoemde System.Collections.Specialized.StringCollection.

Oftwel een stringarray.

Die kun je dan zo ophalen:

Code:
For Each item In My.Settings.NaamVanSetting
ListBox1.Items.Add(item)
Next

Dit ken ik al...! maar ik wil een nieuwe instelling maken...! Een instelling opslaan in een nog iet aangemaakte setting...! Dus ik wil een nieuwe application setting maken...! Hoe doe ik dit...?
 
Aah! Nu snap ik je :D

Ik denk dat dit niet mogelijk is. Je kunt het wel in .INI's gaan zoeken. Daar heb ik nog een leuke class voor. Namelijk:

Code:
Public Class IniFile
    ' API functions
    Private Declare Ansi Function GetPrivateProfileString _
      Lib "kernel32.dll" Alias "GetPrivateProfileStringA" _
      (ByVal lpApplicationName As String, _
      ByVal lpKeyName As String, ByVal lpDefault As String, _
      ByVal lpReturnedString As System.Text.StringBuilder, _
      ByVal nSize As Integer, ByVal lpFileName As String) _
      As Integer
    Private Declare Ansi Function WritePrivateProfileString _
      Lib "kernel32.dll" Alias "WritePrivateProfileStringA" _
      (ByVal lpApplicationName As String, _
      ByVal lpKeyName As String, ByVal lpString As String, _
      ByVal lpFileName As String) As Integer
    Private Declare Ansi Function GetPrivateProfileInt _
      Lib "kernel32.dll" Alias "GetPrivateProfileIntA" _
      (ByVal lpApplicationName As String, _
      ByVal lpKeyName As String, ByVal nDefault As Integer, _
      ByVal lpFileName As String) As Integer
    Private Declare Ansi Function FlushPrivateProfileString _
      Lib "kernel32.dll" Alias "WritePrivateProfileStringA" _
      (ByVal lpApplicationName As Integer, _
      ByVal lpKeyName As Integer, ByVal lpString As Integer, _
      ByVal lpFileName As String) As Integer
    Dim strFilename As String

    ' Constructor, accepting a filename
    Public Sub New(ByVal Filename As String)
        strFilename = Filename
    End Sub

    ' Read-only filename property
    ReadOnly Property FileName() As String
        Get
            Return strFilename
        End Get
    End Property

    Public Function GetString(ByVal Section As String, _
      ByVal Key As String, ByVal [Default] As String) As String
        ' Returns a string from your INI file
        Dim intCharCount As Integer
        Dim objResult As New System.Text.StringBuilder(256)
        intCharCount = GetPrivateProfileString(Section, Key, _
           [Default], objResult, objResult.Capacity, strFilename)
        If intCharCount > 0 Then GetString = _
           Left(objResult.ToString, intCharCount)
    End Function

    Public Function GetInteger(ByVal Section As String, _
      ByVal Key As String, ByVal [Default] As Integer) As Integer
        ' Returns an integer from your INI file
        Return GetPrivateProfileInt(Section, Key, _
           [Default], strFilename)
    End Function

    Public Function GetBoolean(ByVal Section As String, _
      ByVal Key As String, ByVal [Default] As Boolean) As Boolean
        ' Returns a boolean from your INI file
        Return (GetPrivateProfileInt(Section, Key, _
           CInt([Default]), strFilename) = 1)
    End Function

    Public Sub WriteString(ByVal Section As String, _
      ByVal Key As String, ByVal Value As String)
        ' Writes a string to your INI file
        WritePrivateProfileString(Section, Key, Value, strFilename)
        Flush()
    End Sub

    Public Sub WriteInteger(ByVal Section As String, _
      ByVal Key As String, ByVal Value As Integer)
        ' Writes an integer to your INI file
        WriteString(Section, Key, CStr(Value))
        Flush()
    End Sub

    Public Sub WriteBoolean(ByVal Section As String, _
      ByVal Key As String, ByVal Value As Boolean)
        ' Writes a boolean to your INI file
        WriteString(Section, Key, CStr(CInt(Value)))
        Flush()
    End Sub

    Private Sub Flush()
        ' Stores all the cached changes to your INI file
        FlushPrivateProfileString(0, 0, 0, strFilename)
    End Sub

End Class

Als je die class hebt toegevoegd, kun je de volgende voorbeelden gebruiken:

Code:
Dim ini As New IniFile("C:\temp\Naam_Van_INI.ini")

                'wegschrijven van informatie:
                ini.WriteString("general", "boodschap", "JoZ1 van HelpMij.nl!")

                'verkrijgen van informatie:
                Dim boodschap As String = ini.GetString("general", "boodschap", "")
Je INI ziet er na het wegschrijven zo uit:

Code:
[general]
boodschap=JoZ1 van Helpmij.nl!


Snap je? Of ga ik te snel?
 
Heb je dar misschien een tutorial van misschien dat je een Applicatie hiervan kan geven...?
 
Dat kan ik wel even doen. Dan maak ik er gelijk een handleiding van! :)

[edit]Voìla![/edit]
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan