ich habe mehrere Listboxen auf meiner Userform.
Nun möchte ich gern ein Popup Menü bei rechtsklick programmieren.
Dazu habe ich zwei Ansätze.
Der erste Ansatz:
Ich erstelle ein Popupmenü mit
Private Sub mobjListBox_MouseDown(ByVal Button As Integer, _
ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
On Error Resume Next
Set m_Menu = CommandBars("TestMenu")
'm_Menu.Delete
'Set m_Menu = Nothing
On Error GoTo 0
If m_Menu Is Nothing Then
Set m_Menu = Application.CommandBars.Add(Name:="TestMenu", Position:=msoBarPopup, Temporary:=False)
Set m_MenuItem1 = m_Menu.Controls.Add(msoControlButton)
Set m_MenuItem2 = m_Menu.Controls.Add(msoControlButton)
'm_Menu.Controls.Add(msoControlButton).Caption = &H8080FF
With m_MenuItem1
.Style = msoButtonIconAndCaption
.FaceId = 1087 ' Haken vor Zeile
.BeginGroup = True
.State = msoButtonUp
.OnAction = "whichButton"
End With
m_MenuItem1.Caption = RGB(0, 255, 255)
m_MenuItem1.Caption = "Button 1"
m_MenuItem2.Caption = "Button 2"
m_MenuItem1.OnAction = "Makro1"
m_MenuItem2.OnAction = "Makro2"
End If
Dieser Ansatz funktioniert, hat aber das Problem das man dieses Menü erst sieht wenn man mit der Mouse nach rechts geht. Vorher ist nur ein ganz schwacher Umriss zu sehen ( sieht man gut im Beispiel)
Der zweite Ansatz ist; ich öffne mit dem rechtklick eine zweite Userform ( als Popup)
Auch dies funktioniert. Aber hier schaffe ich es einfach nicht, das diese Userform rechts neben der betroffenen Userform geöffnet wird.
Kann mir jemand bei diesem Dilemma helfen?
Ich bekomme beides einfach nicht hin.
https://www.herber.de/bbs/user/134124.xlsb
Habt schon mal rechtvielen dank für euer Interesse.
mfg thomas