Forum: PC-Programmierung Ereignisroutine fürs Mausrad unter VB?


von Norbert_50 (Gast)


Lesenswert?

Hallo an alle,

eigentlich ist es eine ganz einfache Frage und jeder benutzt die 
Funktion, aber unter VB.Net 2010 und VB.Net 2015 finde ich in den 
Ereignissen für eine Windows-Form keinen Eintrag, der für das Bewegen 
des Mausrades zuständig wäre. Es gibt alles Mögliche (MouseDown, 
MouseEnter, MouseHover, MouseMove, MouseLeave, MouseUp, MouseDown) aber 
eben keine Methode für das Drehen am Mausrad. Auch hier in den 
Foren-Beiträgen wurde ich nicht fündig.

Vielleicht könnte ich mir mit der Methode Scroll behelfen, aber dafür 
bräuchte ich eine Scrollbar für die Form, mit der ich deren Inhalt rauf 
und runter scrollen kann. Doch erstens enthält meine Form keine Elemente 
außerhalb ihrer Grenzen (so dass auch eine Scrollbar sinnlos wäre) und 
zweitens will ich mit dem Scrollrad nicht rauf und runter scrollen, 
sondern den Abbildungsmaßstab für die auf die Form zu zeichnende Grafik 
verändern (und anschließend neu zeichnen).

Hat jemand eine Idee, wie ich zu einer Ereignisroutine fürs Drehen am 
Mausrad nebst zugehörigen Parametern für die Drehrichtung komme (sofern 
sich der Mauszeiger über der Form befindet)?

Viele Grüße

Norbert

von Horst S. (Gast)


Lesenswert?

1
Public Class Form1
2
    Protected Overrides Sub OnMouseWheel(ByVal e As System.Windows.Forms.MouseEventArgs)
3
        Debug.WriteLine("MouseWheel" & e.Delta)
4
    End Sub
5
6
End Class

Ausgabe im Immediate-Fenster

von Norbert G. (realist_50)


Lesenswert?

Pfantastisch!!!

Habs gerade ausprobiert - die Variable e.delta enthält - je nach 
Drehrichtung am Mausrad - eine positive oder negative Zahl (bei mir ist 
es die Zahl 120). Damit ist mein Problem gelöst.

Ganz herzlichen Dank für den wertvollen Tipp!

Norbert

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.