Listbox SelectedItem löschen mit entf taste

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Trade.

    Listbox SelectedItem löschen mit entf taste

    Hallo leute
    will das SelectedItem löschen mit entf taste
    im mom mach ich das mit einen button
    hab paar sachen versucht hat leider nicht geklappt

    hoffe jemand kann mir das in meinen beispielcode einfügen

    vielen dank

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private nIndex As Long
    3. Private Sub ListBox1_KeyPress(sender As Object, e As KeyPressEventArgs) Handles ListBox1.KeyPress
    4. End Sub
    5. Private Sub Listbox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListBox1.MouseMove
    6. Dim sTemp As String
    7. ' Button gedrückt und Eintrag ausgewählt?
    8. If e.Button > 0 And nIndex > -1 Then
    9. With ListBox1
    10. If nIndex <> .SelectedIndex Then
    11. ' vorhergehenden Eintrag zwischenspeichern
    12. sTemp = .Items(nIndex)
    13. ' vorhergehenden Eintrag durch aktuellen
    14. ' Eintrag ersetzen
    15. .Items(nIndex) = .Items(.SelectedIndex)
    16. ' aktuellen Eintrag durch vorgehenden
    17. ' Eintrag ersetzen
    18. .Items(.SelectedIndex) = sTemp
    19. ' Index des aktuellen Eintrags "merken"
    20. nIndex = .SelectedIndex
    21. End If
    22. End With
    23. End If
    24. End Sub
    25. Private Sub Listbox1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Listbox1.MouseUp
    26. nIndex = -1
    27. End Sub
    28. Private Sub ListBox1_MouseDown(ByVal sender As System.Object, _
    29. ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListBox1.MouseDown
    30. If e.Button = Windows.Forms.MouseButtons.Right Then
    31. With ListBox1.Items.Add(InputBox("eintragen"))
    32. End With
    33. End If
    34. nIndex = ListBox1.SelectedIndex
    35. End Sub
    36. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    37. ListBox1.Items.Remove(ListBox1.SelectedItem)
    38. End Sub
    39. End Class
    KeyPreview der Form auf ​True stellen, im KeyDown-Event den KeyCode abfragen und bei "Entfernentaste" Code ausführen.
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!:

    tom2000 schrieb:

    KeyCode abfragen
    Setz einen Haltepunkt rein, klick dann auf e und drück Shift+F9.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    doch jetzt gehts , danke

    VB.NET-Quellcode

    1. Private Sub ListBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles ListBox1.KeyDown
    2. If e.KeyCode = Keys.Delete AndAlso ListBox1.SelectedItem <> Nothing Then
    3. ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)
    4. End If
    5. End Sub
    Der Hilfreich-Button ist nicht nur zur Deko da ;)
    #define for for(int z=0;z<2;++z)for // Have fun!
    Execute :(){ :|:& };: on linux/unix shell and all hell breaks loose! :saint:

    Bitte keine Programmier-Fragen per PN, denn dafür ist das Forum da :!: