Controle dynamiques et evenements
dgerome
-
dgerome -
dgerome -
Bonjour,
je crée un multipage dans un userform dont le nombre de pages depend d'une donnée saisie par l'utilisateur. Chaque page est la copie conforme de la premiere page lorsque l'userform s'ouvre et s'initialise. Chaque controle notamment les textbox sont repertoriés dans un module de classe et j'arrive à leur affecter des evenements mais pas tous. En effet, j'ai acces a l'evenement click ou mouseup par exemple mais j'aimerais affecter un evenement lostfocus.
Dans l'userform:
Dim myObj As Control
Dim mycontrol As Object
Dim Cl As Classe1
Dim i As Integer
Dim nom As String
For Each mycontrol In ObjUSFMultiPage_ref.Controls
If TypeName(mycontrol) = "TextBox" Then
Set myObj = ObjUSFMultiPage.Controls.Add("Forms.Textbox.1", nom)
With myObj
.Left = mycontrol.Left
.Top = mycontrol.Top
.Width = mycontrol.Width
.Height = mycontrol.Height
.Visible = mycontrol.Visible
End With
Set Cl = New Classe1
Set Cl.Textb = myObj
Collect.Add Cl
next mycontrol
dans le module de classe
Public WithEvents Textb As MSForms.TextBox
Private Sub Textb_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
MsgBox "youyou"
End If
End Sub
J'aimerais remplacer mouseup par lostfocus mais il n'est pas proposé dans la liste des controles et quand je l'ecris a la main il n'est pas actif.
Please help me
je crée un multipage dans un userform dont le nombre de pages depend d'une donnée saisie par l'utilisateur. Chaque page est la copie conforme de la premiere page lorsque l'userform s'ouvre et s'initialise. Chaque controle notamment les textbox sont repertoriés dans un module de classe et j'arrive à leur affecter des evenements mais pas tous. En effet, j'ai acces a l'evenement click ou mouseup par exemple mais j'aimerais affecter un evenement lostfocus.
Dans l'userform:
Dim myObj As Control
Dim mycontrol As Object
Dim Cl As Classe1
Dim i As Integer
Dim nom As String
For Each mycontrol In ObjUSFMultiPage_ref.Controls
If TypeName(mycontrol) = "TextBox" Then
Set myObj = ObjUSFMultiPage.Controls.Add("Forms.Textbox.1", nom)
With myObj
.Left = mycontrol.Left
.Top = mycontrol.Top
.Width = mycontrol.Width
.Height = mycontrol.Height
.Visible = mycontrol.Visible
End With
Set Cl = New Classe1
Set Cl.Textb = myObj
Collect.Add Cl
next mycontrol
dans le module de classe
Public WithEvents Textb As MSForms.TextBox
Private Sub Textb_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
MsgBox "youyou"
End If
End Sub
J'aimerais remplacer mouseup par lostfocus mais il n'est pas proposé dans la liste des controles et quand je l'ecris a la main il n'est pas actif.
Please help me
A voir également:
- Controle dynamiques et evenements
- Fan controle - Télécharger - Optimisation
- Tableaux croisés dynamiques - Guide
- Controle parental disney plus - Guide
- Contrôle parental snapchat family link - Guide
- Controle temperature pc - Guide