Hallo allerseits!
Ich habe ein kleines Telefontool erstellt in dem es dem User zur laufzeit möglich ist Telefonnummern in einem Textdokument zu speichern damit diese beim nächsten Start der Anwendung wieder zur verfügung stehen.
Das erstellen des Textdokumentes funktioniert auch ganz gut. Nur stehe ich jetzt vor einem weiteren Problem: Dem löschen bestimmter Nummern aus dieser Liste...
Dazu habe ich mir eine Form erstellt mit Labels (lblName, lblNummer) und drei Buttons (btnVor, btnZurück, btnLöschen). Mit den Buttons kann ich Zeilenweise vor bzw. zurück blättern was auch funktioniert. Allerdings habe ich kein "Ende" des Dokumentes festlegen können also wird der Zeilenzähler (klick auf btnVor) ständig um eins erhöht (s. Kommentare im Code).
Mein bisheriger Code:
Ich habe ein kleines Telefontool erstellt in dem es dem User zur laufzeit möglich ist Telefonnummern in einem Textdokument zu speichern damit diese beim nächsten Start der Anwendung wieder zur verfügung stehen.
Das erstellen des Textdokumentes funktioniert auch ganz gut. Nur stehe ich jetzt vor einem weiteren Problem: Dem löschen bestimmter Nummern aus dieser Liste...
Dazu habe ich mir eine Form erstellt mit Labels (lblName, lblNummer) und drei Buttons (btnVor, btnZurück, btnLöschen). Mit den Buttons kann ich Zeilenweise vor bzw. zurück blättern was auch funktioniert. Allerdings habe ich kein "Ende" des Dokumentes festlegen können also wird der Zeilenzähler (klick auf btnVor) ständig um eins erhöht (s. Kommentare im Code).
Mein bisheriger Code:
VB.NET-Quellcode
- Imports System.IO
- Public Class frmKurzwahlWeg
- Dim Zeile As Integer = 1
- Private Sub Form3_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
- lblRückmeldung.Text = ""
- Dim lines() As String = IO.File.ReadAllLines("Kurzwahl.txt")
- Dim sr As New StreamReader(Path.GetDirectoryName(Application.ExecutablePath) & "\Kurzwahl.txt")
- On Error GoTo raus
- Dim linetext As String = lines(Zeile)
- Dim Data() As String = linetext.Split(CChar(";"))
- Dim NameKW As String = Data(0)
- Dim Nummer As String = Data(1)
- lblName.Text = NameKW
- lblNummer.Text = Nummer
- raus:
- sr.Close()
- sr.Dispose()
- sr = Nothing
- End Sub
- Private Sub btnVor_Click(sender As System.Object, e As System.EventArgs) Handles btnVor.Click
- Zeile = Zeile + 1
- Dim lines() As String = IO.File.ReadAllLines("Kurzwahl.txt")
- Dim sr As New StreamReader(Path.GetDirectoryName(Application.ExecutablePath) & "\Kurzwahl.txt")
- On Error GoTo raus 'nicht elegant aber musste sein da ich sonst eine Fehlermeldung bekomme
- 'wenn das Ende des Textdokuments erreicht ist
- If Zeile >= 1 Then ' "AND Zeile < EndOfLines" oder sowas sollte hier noch hinzu. komme nur nicht drauf
- Dim linetext As String = lines(Zeile)
- Dim Data() As String = linetext.Split(CChar(";"))
- Dim NameKW As String = Data(0)
- Dim Nummer As String = Data(1)
- lblName.Text = NameKW
- lblNummer.Text = Nummer
- End If
- raus:
- sr.Close()
- sr.Dispose()
- sr = Nothing
- End Sub
- Private Sub btnZurück_Click(sender As System.Object, e As System.EventArgs) Handles btnZurück.Click
- If Zeile > 1 Then Zeile = Zeile - 1
- Dim lines() As String = IO.File.ReadAllLines("Kurzwahl.txt")
- Dim sr As New StreamReader(Path.GetDirectoryName(Application.ExecutablePath) & "\Kurzwahl.txt")
- On Error GoTo raus
- If Zeile >= 1 Then
- Dim linetext As String = lines(Zeile)
- Dim Data() As String = linetext.Split(CChar(";"))
- Dim NameKW As String = Data(0)
- Dim Nummer As String = Data(1)
- lblName.Text = NameKW
- lblNummer.Text = Nummer
- End If
- raus:
- sr.Close()
- sr.Dispose()
- sr = Nothing
- End Sub
- Private Sub btnLöschen_Click(sender As System.Object, e As System.EventArgs) Handles btnLöschen.Click
- ' hier komme ich nicht weiter. Schon viel rum probiert ohne Lösung. Hoffe mir kann wer nen Tipp geben
- End Sub
- End Class
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „BlueIce“ ()