Ajout Contrôles

Le
Pascal
Bonjour,
J'ai un Userform plein de contrôles que je masque avec cela:

Clients.Show
For Each c In Clients.Controls
Select Case TypeName(c)
Case "TextBox"
c.Visible = False
Case "CheckBox"
c.Visible = False
Case "ListBox", "ComboBox"
c.ListIndex = -1
Case "Label"
c.Visible = False
Case "CommandButton"
c.Visible = False
Case "Frame"
c.Visible = False
End Select
Next c

Maintenant avant le End Sub, j'aimerais ajouter de nouveaux txtBox, label et
combo??

Une piste

Merci

Pascal
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
JB
Le #19932061
Bonjour,

http://boisgontierjacques.free.fr/fichiers/Formulaire/FormSuivantPrecedent2 .xls

JB

On 15 août, 10:39, "Pascal"
Bonjour,
J'ai un Userform plein de contrôles que je masque avec cela:

Clients.Show
For Each c In Clients.Controls
        Select Case TypeName(c)
        Case "TextBox"
            c.Visible = False
        Case "CheckBox"
            c.Visible = False
        Case "ListBox", "ComboBox"
            c.ListIndex = -1
        Case "Label"
            c.Visible = False
        Case "CommandButton"
            c.Visible = False
        Case "Frame"
            c.Visible = False
        End Select
    Next c

Maintenant avant le End Sub, j'aimerais ajouter de nouveaux txtBox, label et
combo??

Une piste

Merci

Pascal


MichDenis
Le #19933051
| Maintenant avant le End Sub, j'aimerais ajouter
| ajouter de nouveaux txtBox, label et combo??

Ceci ajoute des contrôles de façon temporaire.
Ils disparaissent dès que tu "Unload" le formulaire.

À ces contrôles temporaires, je ne connais pas de manière
d'ajouter une procédure événementielle. La chose est
réalisable mais les contrôles sont permanents. Il faudrait
que tu crées une procédure pour les enlever ainsi que
leur code à la fermeture du formulaire.

Le plus simple et de loin, est de créer en mode création,
tous les contrôles nécessaires et de jouer avec la propriété
visible de ceux-ci .

'-------------------------------------------------
Private Sub CommandButton1_Click()
With Me.Controls
With .Add("forms.Label.1", "MonEtiquette", True)
.Left = 10: .Top = 10
.Width = 60: .Height = 25
.Caption = "Bonjour"
End With
With .Add("forms.Textbox.1", "MonTextbox", True)
.Left = 80: .Top = 10
.Width = 60: .Height = 25
End With
With .Add("forms.Checkbox.1", "MonTextbox", True)
.Left = 20: .Top = 60
.Width = 60: .Height = 25
.Caption = "Test"
End With
End With
End Sub
'-------------------------------------------------
Patou
Le #19933131
Il y a une autre piste qui consiste à placer les controles de telles
manières que le fait d'augmenter ou de diminuer la hauteur ou la largeur du
Userform les masquent et les démasquent j'ai fait comme cela sur certains
de mes Userform
Exemple Initialise avec height = 150 et width = 300 et suivant un évenement
soit height = 250 ou width= 500 ou les deux bien sur . Et la tu as des
controles qui n'apparaissent que suivant tes désirs


Le 15/08/09 17:21, dans , « MichDenis »

| Maintenant avant le End Sub, j'aimerais ajouter
| ajouter de nouveaux txtBox, label et combo??

Ceci ajoute des contrôles de façon temporaire.
Ils disparaissent dès que tu "Unload" le formulaire.

À ces contrôles temporaires, je ne connais pas de manière
d'ajouter une procédure événementielle. La chose est
réalisable mais les contrôles sont permanents. Il faudrait
que tu crées une procédure pour les enlever ainsi que
leur code à la fermeture du formulaire.

Le plus simple et de loin, est de créer en mode création,
tous les contrôles nécessaires et de jouer avec la propriété
visible de ceux-ci .

'-------------------------------------------------
Private Sub CommandButton1_Click()
With Me.Controls
With .Add("forms.Label.1", "MonEtiquette", True)
.Left = 10: .Top = 10
.Width = 60: .Height = 25
.Caption = "Bonjour"
End With
With .Add("forms.Textbox.1", "MonTextbox", True)
.Left = 80: .Top = 10
.Width = 60: .Height = 25
End With
With .Add("forms.Checkbox.1", "MonTextbox", True)
.Left = 20: .Top = 60
.Width = 60: .Height = 25
.Caption = "Test"
End With
End With
End Sub
'-------------------------------------------------




Publicité
Poster une réponse
Anonyme