Mousedown-event voor alle testboxen op userform

Status
Niet open voor verdere reacties.

JanJongste

Gebruiker
Lid geworden
1 mrt 2016
Berichten
24
Gemotiveerd door het eerdere contact met Helpmij.nl wil ik mijn geluk nog een keer gaan beproeven.

Ik heb een Word-userform waarin de gebruiker gekopieerde gegevens kan plakken. Om het snelmenu hiervoor onder de rechter muisknop op te roepen gebruik ik: http://word.mvps.org/faqs/userforms/AddRightClickMenu.htm

De MouseDown werkt goed voor de eerste textbox. Ik zou alleen graag die mogelijkheid willen gaan toewijzen aan alle tekstboxen (textbox0 t/m textbox10). Ik geraak alleen niet in de buurt van een oplossing. Wie kan mij helpen?

Mag ik iedereen alvast een stukje bedanken voor de inspanning.
 
Je zal een Class Module moeten maken waar de textbox 1 t/m 10 lid van is. Het MouseDown event werkt dan ineens op alle 10 textboxes.
 
Beste senioren,

Ik heb wat geëxperimenteerd met een klasse-module. Het lukt om met de rechter muisknop een Msgbox verkrijgen in elke textbox. De code waarmee het snelmenu opkomt krijg ik maar niet aan de praat. Dus wel als sub in het userform1, maar in de klass weigert de code dienst.

Wie heeft er nog een goede raad?

Bekijk bijlage JanJongste -VBA-userform-3.zip
 
In jouw Klasse moet je tbv Showpopup naar het Userform verwijzen ipv naar de Klasse/textbox

Code:
Private Sub Textgroup_MouseDown(ByVal Button As Integer, _
   ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

     If Button = 2 Then
         Call ShowPopup(UserForm1, "Userform1", X, Y)
     End If

End Sub
 
Met het advies van E v R lukt het. nogmaals alleen hartelijk dank. Ik zal mijzelf maar eens een boek erover aanschaffen
 
Code:
Dim T_00(1 To 10) As New Klasse1

Private Sub UserForm_Initialize()
    For j = 1 To 10
      Set T_00(j).m_TextGroup = Me("Textbox" & j)
    Next
End Sub

Code:
Public WithEvents m_TextGroup As MSForms.Textbox

Private Sub m_Textgroup_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
     If Button = 1 Then ShowPopup m_TextGroup.Parent, m_TextGroup.Parent.Caption, X, Y
End Sub

Dit kan een begin zijn:

http://www.snb-vba.eu/VBA_Userform_invoercontrole.html

En 300 regels VBA voor een popup schermpje lijkt me zwaar overdreven.
 

Bijlagen

Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan