Scrollbarposition

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von haiyyu.

    Scrollbarposition

    Hi Community,

    ich hab ne kleine Frage:
    Wie lässt sich die Scrollbarposition einer ListBox herausfinden? (Also wie weit nach unten der Benutzer schon gescrollt hat)
    Danke schon mal.

    Mfg,
    -haiyyu
    Die Postition weis ich jetzt nicht, aber du kannst dir den Index des z.B ersten oder Letzten Items auslesen.

    VB.NET-Quellcode

    1. Dim Punkt As New Point(ListBox1.Width / 2, 19)
    2. 'Für X: (ListBox1.Width / 2)
    3. 'Die Mitte der Listbox nehmen
    4. 'Für Y: (19)
    5. 'Die Mitte der ersten Zeile nehmen.
    6. 'Da jede Zeile 13 Höhe hat, würden Werte zwischen 13 und 25 gehen auch)
    7. 'Um die zweite zu wählen würde man 26-38 nehmen usw...
    8. MsgBox(ListBox1.IndexFromPoint(Punkt))
    wintoolz.de
    • wintoolz.KeyLocker - Programm zum sicheren Verwalten von Passwörten
    • wintoolz.CodeGallery - Datenbank für Codebeispiele veschiedener Programmiersprachen
    • wintoolz.Haushaltsbuch - Dient zum Auflisten der Aktivitäten ihrer Bankkonten

    Benutze auch du Ecosia
    Was willst denn damit machen?
    Speichern und wieder an diese Position springen?
    wintoolz.de
    • wintoolz.KeyLocker - Programm zum sicheren Verwalten von Passwörten
    • wintoolz.CodeGallery - Datenbank für Codebeispiele veschiedener Programmiersprachen
    • wintoolz.Haushaltsbuch - Dient zum Auflisten der Aktivitäten ihrer Bankkonten

    Benutze auch du Ecosia
    Genau das.
    Ich aktualisiere die ListBox nämlich alle 5 Sekunden, das läuft so ab:

    Quellcode

    1. Alle ListBox Items löschen
    2. Neu einlesen
    Leider ist die Scrollbar dann wieder ganz oben...
    Ah, hab noch was gefunden :)
    Die TopIndex-Eigenschaft kannst du zwischenspeichern und später wieder laden.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Dim vTop As Integer
    3. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    4. vTop = ListBox1.TopIndex 'In vTop speichern
    5. End Sub
    6. Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
    7. ListBox1.TopIndex = vTop 'Von vTop laden
    8. End Sub
    9. End Class
    wintoolz.de
    • wintoolz.KeyLocker - Programm zum sicheren Verwalten von Passwörten
    • wintoolz.CodeGallery - Datenbank für Codebeispiele veschiedener Programmiersprachen
    • wintoolz.Haushaltsbuch - Dient zum Auflisten der Aktivitäten ihrer Bankkonten

    Benutze auch du Ecosia