Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
376to380
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
376to380
376to380
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Command-B. den Focus zuweisen über MouseMove

Command-B. den Focus zuweisen über MouseMove
05.02.2004 15:16:04
Elmar Steigenberger
Hallo, ihr lieben Helfer und Helferinnen,
ich möchte in einer Userform den Anwender die Bedienung erleichtern und mir fehlt noch ein Befehl:
Nachdem die meisten viel mit älteren Laptops arbeiten und dort die Helligkeitsausleuchtung nicht so toll ist, möchte ich den Commandbutton, der gerade aktiv ist heller machen. Wenn der User den wieder verläßt, dann soll er wieder dunkel werden. Das klappt auch so weit schon ganz gut:
Userform mit 3 Commandbuttons

Private Sub CommandButton1_Enter()
CommandButton1.BackColor = &HE0E0E0 'hellgrau zuweisen
CommandButton2.BackColor = &H8000000F 'dunkelgrau zuweisen
CommandButton3.BackColor = &H8000000F 'dunkelgrau zuweisen
End Sub


Private Sub CommandButton2_Enter()
CommandButton2.BackColor = &HE0E0E0 'hellgrau zuweisen
CommandButton1.BackColor = &H8000000F 'dunkelgrau zuweisen
CommandButton3.BackColor = &H8000000F 'dunkelgrau zuweisen
End Sub


Private Sub CommandButton3_Enter()
CommandButton3.BackColor = &HE0E0E0 'hellgrau zuweisen
CommandButton1.BackColor = &H8000000F 'dunkelgrau zuweisen
CommandButton2.BackColor = &H8000000F 'dunkelgrau zuweisen
End Sub

Allerdings ist das nur die Lösung für die Tastatur, denn nur wenn man Tab drückt, kommt man auf die Felder und der Focus wird gesetzt. Jetzt möchte ich aber noch, wenn man mit der Maus draufzeigt, dass das Feld auch grau wird:
funktioniert auch:

Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
CommandButton1.BackColor = &HE0E0E0
CommandButton2.BackColor = &H8000000F
CommandButton3.BackColor = &H8000000F
End Sub

Analog 2. und 3. Commandbutton
Allerdings wird da jetzt nicht der Focus gesetzt, wenn man nur draufzeigt, d.h. der User der auf den 3. Commandbutton zeigt, hat den Focus immer noch auf dem ersten Commandbutton. Er soll aber nicht klicken müssen, um den Focus zu kriegen, sondern das Zeigen soll reichen.
Wie kann ich den (nicht existierenden) "SetFocus"-Befehl in das Mousemove-Ereignis einbauen? Ich habe nur LostFocus und GotFocus und TakeFocusOnClick gefunden, die mir aber alle nicht weiterhelfen!
Vielen Dank fürs Lesen, Eindenken und Antworten!
liebe e-Grüße - Elmar

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Command-B. den Focus zuweisen über MouseMove
05.02.2004 16:12:07
Alex K.
Hallo Elmar
versuche es mal mit den Befehl

CommandButton1.SetFocus

Im MouseMove Ereignis. Bei mir klappt es.
So einfach geht das - Super!!!!!
05.02.2004 16:32:43
Elmar Steigenberger
Hallo Alex!
es funktioniert hervorragend.
Echt witzig, dass ich über die Suche nach Focus in der VBA-Hilfe nur LostFocus und GotFocus und TakeFocusOnClick gefunden habe, mir den Befehl "Setfocus" eigentlich nur im Kopf ausgedacht habe, weil genau das das sein müßte, was ich brauche, und dann heißt der Befehl auch noch so!!!
Da muß ich wohl jetzt aber langsam das Exce gut- VBA Nein bei meinen Einträgen bleiben lassen.
Vielen Dank für die Hilfe, das war genau das, was ich gebraucht habe!!!
liebe e-Grüße
Elmar
Anzeige
AW: So einfach geht das - Super!!!!!
05.02.2004 16:49:00
Alex K.
Hallo Elmar
ist mir auch schon oft passiert.
Versuche mal im VBA Editor über die F2 den Objektkatalog aufzurufen. Dann nach deinem Begriff suchen. Diese Methode ist sehr schnell und man kann sich in Ruhe die Objekte mit ihren Eigenschaften und Methoden anschauen.

98 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige