Creer un controle

Résolu
bilaloch Messages postés 556 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 31 octobre 2019 - 7 sept. 2004 à 13:54
bilaloch Messages postés 556 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 31 octobre 2019 - 8 nov. 2004 à 21:17
Bonjour,

Comment svp creer un controle ou une feuille apres l'execution ?

Merci :approve) et @ Plus ;)

BIL@Loch
:)

8 réponses

cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
7 sept. 2004 à 14:05
Rajout d'un Label ou d'une Picture :

Option Explicit

Dim MonLabel As Label
Dim MonPictureBox As PictureBox

Private Sub Command1_Click()

Form1.Controls.Add "VB.Label", "NewLabel", Form1

Set MonLabel = Form1!NewLabel

With MonLabel
.Visible = True
.Top = 0
.Left = 0
.Width = 2000
.Height = 300
.Font.Size = 12
.Caption = "Ceci est mon label"
End With

Form1.Controls.Add "VB.PictureBox", "NewPictureBox", Form1

Set MonPictureBox = Form1!NewPictureBox

With MonPictureBox
.Visible = True
.Top = 500
.Left = 0
.Width = 4000
.Height = 2000
.BackColor = vbRed
End With

End Sub

It@li@
3
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 sept. 2004 à 15:37
A cette méthode, je préfère celle qui consiste à faire un groupe de controle.
Sur ta form ou tu veux ajouter un controle, place un CommandButton nommée Command1 par exemple et fixe :
1- Sa propriété Visible = False
2- Sa propriété Index à 0
tu viens de créer un groupe de controle Command1() qui sont des CommandButton, et tu en as un dedans : C'est Command1(0)
Tu peux ensuite faire un code du genre :
Dim Idx as Long
Idx = Command1.count  ' Retourne le Nb de Commandbutton 
' Donc le prochain index dispo (car base 0)
Load Command1(Idx)
With Command1(Idx)
  .Move ..., ...    'Déplace le nouveau CommandButton ou tu veux
  .Visible = True  ' On l'affiche
End With

L'avantage par rapport à la méthode de Italia ??
Avec cette méthode, tu as accès à l'EVT Click des CommandButton que tu viens de créer ...
Private Sub Command1Click(Index as Integer)
Select Case Index
  Case 1     ' Click sur 1er bouton créé
  Case 2     ' Click sur 2eme bouton créé
  ...
End Select
End sub


Tu peux meme accéder à tous les evt de tous les controles que tu crées ainsi.
A toi de voir ce qui t'intéresse le plus ...

Christophe R.
3
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 sept. 2004 à 23:14
... Enfin en fait si ! tu as le choix mais l'aute solution est à base d'API CreateWindow() et compagnie, ... ca devrait passer avec cela pour créer une forme de toute pièce, si ca t'intéresse vraiment ...

Christophe R.
3
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
8 sept. 2004 à 16:00
Via la meme API oui puisque tu récupère le handle de la fenetre créé ... mais tu risque d'avoir des soucis pour gérer les evt de ces controles !!! Il faudrait tout subclasser à mon avis ... je suis pas un grand spécialiste du sujet, mais il y a des pro de l'affaire içi même

Christophe R.
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
bilaloch Messages postés 556 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 31 octobre 2019 1
7 sept. 2004 à 17:15
Bonjour,

Ok, merci. Et pour les feuilles ???

Merci :approve) et @ Plus ;)

BIL@Loch
:)
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
7 sept. 2004 à 23:13
Pour une feuille, tu n'as pas le choix, tu dois la dessiner en mode Design et ensuite tu l'ouvres par un "NomdelaForm.Show" par exemple ...

Christophe R.
0
bilaloch Messages postés 556 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 31 octobre 2019 1
8 sept. 2004 à 15:50
Bonjour,

Oui cela m'interesse... Peux-t'on creer des controle sur cette feuille créé !?!

Merci :approve) et @ Plus ;)

BIL@Loch
:)
0
bilaloch Messages postés 556 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 31 octobre 2019 1
8 nov. 2004 à 21:17
Slt,

Merci Christophe et dsl pr le retard :blush) ...

Merci :approve) et @ Plus ;)

BIL@Loch
:)
0
Rejoignez-nous