[VB6] creation et gestion de contrôle dynamique
Je travaille actuellement en VB 6.
Je sait créer ,de façon dynamique, des contrôles. Je peux les créer et les manipuler
Exemple :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| Dim WithEvents lblDynamique As VB.Label
Dim WithEvents frmDynamique As VB.Frame
Dim WithEvents vcbDynamique As VB.VScrollBar
Dim WithEvents flgDynamique As MSFlexGrid
Set lblDynamique = formMe.Controls.Add("VB.Label", "lblNom", objOu)
lblDynamique.Caption = ChampNom
lblDynamique.BackStyle = 0
lblDynamique.Left = xLabel
lblDynamique.Top = HauteurLabel * 1.65 * i + 100 + 20
lblDynamique.Width = LargeurLabel
lblDynamique.Height = HauteurLabel
lblDynamique.Visible = True |
Mais ce que je n’arrive pas à faire c’est :
- créer des des contrôles de type flexgride (même si je les est référencé) : Set frmDynamique = formMe.Controls.Add(MSFlexGrid, "flgNom", formMe) ‘ ne marche pas car ne reconnaît pas ProgId de MSFlexGrid
- géré les événement de mes contrôles créé à l’exécution.
Je veux éviter la solution consistant à faire une collection de contrôle avec un index avant l’exécution de mon programme.
Merci par avance.
[Edité par Nightfall]
[Balise Code ajoutée]
suite de ma grande question
J'ai toujours la seconde partie de ma question qui reste sans réponse.
"Comment recevoir et gérer les événements de contrôle créé de façon dynamique ?"
Je pressise que je ne peux pas créer une "collection" de controle de même nom en utilisant la propriété index (ex : je crée dans ma from au dévelopement label(0), puis je crée de facon dynamique label(1) label(2) ... ; Je ne peux pas utiliser cette solution.).