Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1608to1612
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
MouseMove / Over / hover Command Button
16.02.2018 14:52:50
Nele
Hallo,
wie stell ich es am besten an das:
sich die Hintergrundfarbe eines CommandButtons bei einer Mausbewegung darüber kurzfristig verändert ?
Private Sub btnEingabe_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Wäre mein Ansatz gewesen..
Mfg
Nele

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: MouseMove / Over / hover Command Button
16.02.2018 15:02:44
Peter(silie)
Hallo,
am besten einfach lassen.
Welchen Sinn hat es, die Farbe für einen kurzen Augenblick zu ändern?
Was das ganze hier wesentlich komplizierter macht als es zu seien hat,
ist der Punkt "kurzfristig verändern".
Entweder ganz oder gar nicht.
AW: MouseMove / Over / hover Command Button
16.02.2018 16:22:31
Nepumuk
Hallo Nele,
CommandButton auf Tabelle oder auf UserForm?
Gruß
Nepumuk
AW: MouseMove / Over / hover Command Button
16.02.2018 20:37:23
Daniel
HI
der Ansatz ist schon richtig.
die Frage ist, wie du die Farbe wieder wegbekommst, weil es kein Event gibt, welches dir anzeigt, dass sich der Mauszeiger nicht mehr über dem Button befindet.
die einfachste Lösung ist, dass du X und Y ermittelst, ob du dich im Randbereich des Buttons befindest oder in der Mitte.
im Randbereich schaltest du auf die Originalfarbe um, in der Mitte auf die Signalfarbe
Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X  _
As Single, ByVal Y As Single)
Const Rand As Single = 10
With CommandButton1
If Y  (.Height - Rand) Then
If .BackColor  -2147483633 Then .BackColor = -2147483633
ElseIf X  (.Width - Rand) Then
If .BackColor  -2147483633 Then .BackColor = -2147483633
Else
If .BackColor  vbRed Then .BackColor = vbRed
End If
End With
End Sub
sollte mit ActiveX-Buttons auf dem Blatt und in Userforms funktionieren.
funktioniert nicht mit Formularbuttons oder sonstigen Grafikelementen!
kleiner Nachteil dieser Methode ist, dass das Umfärben bei schnellen Mausbewegungen nicht immer zuverlässig erkannt wird, dann einfach nochmal langsamer über den Button streichen oder den Randbereich größer machen.
Der Button sollte auch ausreichend groß sein.
Vorteil ist, dass du mit einem Event auskommst und fürs Entfärben keine weiteren Makros brauchst.
Gruß Daniel
Anzeige
AW: MouseMove / Over / hover Command Button
20.02.2018 07:25:46
Nele
Guten Morgen,
funktioniert genau wie ich es mir vorgestellt habe.
Danke
Mfg
Nele
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen