VBA-Programmierung in Microsoft Excel

Tutorial: Die Dialoge

MouseDown-, MouseUp-Ereignisse

Treten ein, wenn der Benutzer mit einer Maustaste klickt. MouseDown tritt ein, wenn der Benutzer die Maustaste drückt, MouseUp tritt ein, wenn der Benutzer die Maustaste loslässt.

Syntax

Für die Steuerelemente Multiseiten und Register (MultiPage und TabStrip)
Private Sub object_MouseDown( index As Long, ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

Private Sub object_MouseUp( index As Long, ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

Für andere Steuerelemente
Private Sub object_MouseDown( ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

Private Sub object_MouseUp( ByVal Button As fmButton, ByVal Shift As fmShiftState, ByVal X As Single, ByVal Y As Single)

Die Syntax der Ereignisse MouseDown und MouseUp besteht aus folgenden Teilen:

Teil Beschreibung
object Erforderlich. Ein gültiges Objekt.
index Erforderlich. Der Index der Seite oder der Registerkarte in einem Multiseiten-Steuerelement oder Register-Steuerelement mit dem angegebenen Ereignis.
Button Erforderlich. Ein Wert einer Ganzzahl, der angibt, welche Maustaste das Ereignis ausgelöst hat.
Shift Erforderlich. Der Zustand der Tasten UMSCHALT, STRG und ALT.
X, Y Erforderlich. Die horizontale oder vertikale Position in Punkten vom linken oder oberen Rand des Formulars, Rahmen-Steuerelements (Frame) oder Page-Objekts.

Einstellungen

Die Einstellungen für Button sind:

Konstante Wert Beschreibung
fmButtonLeft 1 Die linke Taste wurde gedrückt.
FmButtonRight 2 Die rechte Taste wurde gedrückt.
FmButtonMiddle 4 Die mittlere Taste wurde gedrückt.

Die Einstellungen für Shift sind:

Wert Beschreibung
1 UMSCHALT wurde gedrückt.
2 STRG wurde gedrückt.
3 UMSCHALT und STRG wurden gedrückt.
4 ALT wurde gedrückt.
5 ALT und UMSCHALT wurden gedrückt.
6 ALT und STRG wurden gedrückt.
7 ALT, UMSCHALT und STRG wurden gedrückt.

Sie können einzelne Zustandstasten erkennen, indem Sie die folgenden Konstanten verwenden:

Konstante Wert Beschreibung
fmShiftMask 1 Maske zum Erkennen von UMSCHALT.
fmCtrlMask 2 Maske zum Erkennen von STRG.
fmAltMask 4 Maske zum Erkennen von ALT.

Hinweise

Bei einem Multiseiten-Steuerelement tritt das MouseDown-Ereignis ein, wenn der Benutzer eine Maustaste über einem Steuerelement drückt.

Bei einem Register-Steuerelement bezeichnet das index-Argument die Registerkarte, auf die der Benutzer geklickt hat. Ein Index mit dem Wert -1 gibt an, dass der Benutzer nicht auf eine Registerkarte geklickt hat. Wenn sich z.B. keine Registerkarten in der oberen rechten Ecke des Steuerelements befinden, wird durch das Klicken in der oberen rechten Ecke der Index auf -1 gesetzt.

Für ein Formular kann der Benutzer die Ereignisse MouseDown und MouseUp auslösen, indem er eine Maustaste in einem leeren Bereich, in einem Datensatzselektor oder auf einer Bildlaufleiste in diesem Formular drückt und wieder loslässt.

Die Reihenfolge der mausbezogenen Ereignisse lautet wie folgt:

  1. MouseDown

  2. MouseUp

  3. Click

  4. DblClick

  5. MouseUp

MouseDown- oder MouseUp-Ereignisprozeduren geben Aktionen an, die durchgeführt werden, wenn eine Maustaste gedrückt oder losgelassen wird. Die Ereignisse MouseDown und MouseUp ermöglichen Ihnen, zwischen der linken, rechten und mittleren Maustaste zu unterscheiden. Sie können auch Code für Maus-Tasten-Kombinationen schreiben, die die Zustandstasten UMSCHALT, STRG und ALT verwenden.

Wenn eine Maustaste gedrückt wird, während sich der Zeiger über einem Formular oder Steuerelement befindet, wird die Maus von diesem Objekt "gefangen", d.h., dieses Objekt erhält alle Mausereignisse bis einschließlich zum letzten MouseUp-Ereignis. Dies impliziert, dass die X- und Y-Koordinaten des Mauszeigers, die von einem Mausereignis zurückgegeben werden, nicht immer innerhalb der Grenzen des Objekts liegen müssen, das diese Ereignisse erhält.

Wenn die Maustasten nacheinander gedrückt werden, erhält das Objekt, das die Maus "fängt", alle folgenden Mausereignisse, bis alle Maustasten losgelassen wurden.

Verwenden Sie das Shift-Argument, um den Zustand der Tasten UMSCHALT, STRG und ALT zu ermitteln, wenn das MouseDown- oder MouseUp-Ereignis eingetreten ist. Wenn z.B. sowohl STRG als auch ALT gedrückt sind, hat Shift den Wert 6.