Radio station opslaan

Status
Niet open voor verdere reacties.

martijn098

Gebruiker
Lid geworden
18 feb 2012
Berichten
341
hallo mensen

ik heb een programma waarmee je naar radio stations kan luisteren en zelf toevoegen nu heb ik dit gemaakt 11.PNG maar nu wil ik dat ik de radio station,s kan opslaan dat is gelukt maar nu wil ik dat als je het programma afsluit dat de station,s dan worden opgeslagen maar hoe kan ik dat doe
dit heb ik al
Code:
Private Sub Button25_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button25.Click
        ListBox1.Items.Add(TextBox1.Text)
    End Sub

    Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
        TextBox1.Text = ListBox1.SelectedItem
    End Sub

    Private Sub Button29_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button29.Click
        ListBox1.Items.Remove(ListBox1.SelectedItem)
    End Sub
 
Laatst bewerkt:
Je hebt een formclosing event in een form. Als je daarin zet dat de code opgeslagen moet worden, gebeurt dat bij het sluiten van de form.

Hoe kom je er?
In je code-window staan er bovenaan twee comboboxen. Druk op de linker en selecteer "(form1 events)". Druk dan op de linker combobox en selecteer "FormClosing" of "FormClosed". De namen vertellen je wanneer ze precies worden uitgevoerd.

Er is nog een mogelijkheid: Als het programma afsluit. Dit is alleen iets ingewikkelder:
Dubbelklik in de solution explorer op "My Project". Zorg dan dat je in het tabblad "Appliccation" zit. scroll in het tabblad helemaal naar beneden en druk op de knop "View Application Events". Dan opent er een code-scherm met bovenaan weer twee comboboxen. In de linker selecteer je "(MyApplication Events)", in de rechter selecteer je "shutdown". De code die je hierin zet zou moeten openen bij het afsluiten van je programma. Ik heb het zelf nog nooit geprobeerd, dus ik weet niet of het werkt.

Succes!
MartinJM
 
Wil je dat de naam wordt opgeslagen en een verborgen url, of wil je dat alleen een url wordt weergegeven?
 
@MartinJM ik krijg alleen dit Naamloos.jpg
@mitchosoft de ulr of ip adres moet worden opgeslagen
 
Als je al die lege subroutines (private subs) niet gebruikt, haal ze dan weg, anders zou het ten koste kunnen gaan van de performance. Maar die Form1_FormClosed sub is wat je moet hebben om de radiostation op te slaan. Je kunt het beste eerst jezelf afvragen op welke manier je de radiostation wilt opslaan, wil je ze bijvoorbeeeld in het register opslaan, in een ini bestand onder %applicationdata%, in een text bestandje naast je executable, en meer van dat soort mogelijkheden. Persoonlijk zou ik kiezen voor een ini bestand of een text bestand omdat daar makkelijker mee te werken is.

Als laatste heb ik nog een tip voor je: Geef al je controls die ook daadwerkelijk een functie hebben een duidelijk naam zodat je ze sneller kan herkennen wanneer je in het codevenster bezig bent. Als je bijvoorbeeld een TextBox hebt waar de gebruiker zijn of haar voornaam in moeten vullen, dan is een naam als tbVoorNaam toch veel duidelijk dan TextBox1, TextBox2, TextBox8of TextBox17? Het is misschien een vervelend klusje maar geloof mij, je zult veel makkelijker je weg vinden in je code als je je controls duidelijke namen geeft. :)
 
Laatst bewerkt:
hoe werkt die code ? en moet je dat bestand ook mee leveren met de setup ?
 
ik heb nog even op google gekeken en heb dit gevonden
Code:
        Dim file_write As New System.IO.StreamWriter("C:/eigentext.txt", False)

        For i As Byte = 0 To ListBox1.Items.Count - 1
            file_write.WriteLine(ListBox1.Items(i))
        Next
        file_write.Close()
en ook nog een voor het laden
Code:
     Dim file_read As New System.IO.StreamReader("C:/eigentext.txt", False)
        Dim file_line As String

        While file_read.Peek >= 0
            file_line = file_read.ReadLine
            ListBox1.Items.Add(file_line)
        End While

        file_read.Close()
dit werk maar hoe kan ik nu dingen verwijderen ?:D
 
Nee, dat hoeft niet: die kun je in de resources beheren.
[edit] Zie nu ook je andere bericht.

stringvariabele = stringvariabele.Replace("blabla","") ?
[/edit]
 
Laatst bewerkt:
Nouw mensen ik heb de oplossing gevonden
Code:
Private Sub Form1_FormClosed(sender As Object, e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed
        If File.Exists(Application.StartupPath + "\save.txt") Then
            My.Computer.FileSystem.DeleteFile(Application.StartupPath + "\save.txt")
        End If
        If ListBox1.Items.Count > 0 Then
            Dim SW As StreamWriter, i As Integer, Temp As String
            SW = IO.File.CreateText(Application.StartupPath + "\save.txt")
            For i = 0 To ListBox1.Items.Count - 1
                If (i <> 0) Then
                    Temp = Temp + "-" + ListBox1.Items.Item(i)
                Else
                    Temp = ListBox1.Items.Item(0)
                End If
            Next
            SW.Write(Temp)
            SW.Flush()
            SW.Close()
        End If
en om te laden
Code:
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Try
            If File.Exists(Application.StartupPath & "\save.txt") Then

                Dim SR As StreamReader, Temp, Item As String, i As Integer
                If (File.Exists(Application.StartupPath + "\save.txt")) Then
                    SR = File.OpenText(Application.StartupPath & "\save.txt")
                    Temp = SR.ReadToEnd()
                    SR.Close()
                    For i = 0 To Temp.Length - 1
                        If (Temp.Substring(i, 1) <> "-") Then
                            Item += Temp.Substring(i, 1)
                        Else
                            ListBox1.Items.Add(Item)
                            Item = String.Empty
                        End If
                    Next
                    ListBox1.Items.Add(Item)
                End If
            End If
        Catch ex As Exception
            MsgBox("Er is een fout opgetreden.Het save bestand zal worden verwijderd ")
            My.Computer.FileSystem.DeleteFile(Application.StartupPath & "\save.txt")
bedank voor alle reacties
 
Heb je de rest van mijn post ook gelezen? Ik geef je daar een paar tips. Ik heb het idee dat je het niet eens gezien hebt.
 
@The Mighty Atom ja klopt daar ben ik ook nog mee bezig bedankt voor die tip
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan