Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Supprimer un objet ?

4 réponses
Avatar
Loïc Carrère
Salut tout le monde.


En connaissant son nom ,est-il possible de supprimer par programmation
un contrôle contenu dans un formulaire ?


ex: RemoveObject("Command1")


Merci pour vos lumières.

Loïc

--

Loïc Carrère

http://www.asi-concept.fr

4 réponses

Avatar
Jacques93
Loïc Carrère,
Loïc Carrère a écrit :
Salut tout le monde.


En connaissant son nom ,est-il possible de supprimer par programmation
un contrôle contenu dans un formulaire ?


ex: RemoveObject("Command1")





A ma connaissance, mais je peux me tromper, on ne peut "supprimer" un
contrôle que s'il a été crée de manière dynamique.

Deux méthodes :

1 - Un groupe de contrôle. Au départ il faut au moins un contrôle avec
la propriété Index = 0, ce qui crée un groupe de contrôle.

Ensuite pour créer un contrôle de manière dynamique :

Load Command1(i)
Command1(i).Left = 120
Command1(i).Top = 120
Command1(i).Visible = True

et pour le supprimer

Unload Command1(i)

Les procédures événementielles auront l'index du contrôle en
paramètre :

Private Sub Command1_Click(Index As Integer)


2 - Controls.Add / Controls.Remove

Déclaration du contrôle avec WithEvents pour gérer les événements

Private WithEvents cmdObject As CommandButton

Pour créer le contrôle :

Set cmdObject = Form1.Controls.Add("VB.CommandButton", "Command1")
cmdObject.Left = 120
cmdObject.Top = 120
cmdObject.Caption = "Bouton Dynamique"
cmdObject.Visible = True


Pour le supprimer :

Form1.Controls.Remove ("Command1")

Les procédures d'événements sont basées sur le nom de la variable :

Private Sub cmdObject_Click()

--
Cordialement,

Jacques.
Avatar
Gloops
Loïc Carrère a écrit :
Merci pour vos lumières.



Salut,

A propos de lumières, si le but est que l'objet n'apparaisse plus à
l'écran, on mettra sa propriété Visible à False.

Excuse si tu l'avais déjà fait, quelquefois on voit des questions
surprenantes.
Avatar
Loïc Carrère
Merci bien Jacques!

Je connaissais la première méthode mais c'est quelque chose comme la
seconde que je recherchais (afin de povoir être utilisée dans un
conteneur ActiveX).

Merci encore. ^^

Loïc


Loïc Carrère,
Loïc Carrère a écrit :
Salut tout le monde.


En connaissant son nom ,est-il possible de supprimer par programmation un
contrôle contenu dans un formulaire ?


ex: RemoveObject("Command1")





A ma connaissance, mais je peux me tromper, on ne peut "supprimer" un
contrôle que s'il a été crée de manière dynamique.

Deux méthodes :

1 - Un groupe de contrôle. Au départ il faut au moins un contrôle avec
la propriété Index = 0, ce qui crée un groupe de contrôle.

Ensuite pour créer un contrôle de manière dynamique :

Load Command1(i)
Command1(i).Left = 120
Command1(i).Top = 120
Command1(i).Visible = True

et pour le supprimer

Unload Command1(i)

Les procédures événementielles auront l'index du contrôle en
paramètre :

Private Sub Command1_Click(Index As Integer)


2 - Controls.Add / Controls.Remove

Déclaration du contrôle avec WithEvents pour gérer les événements

Private WithEvents cmdObject As CommandButton

Pour créer le contrôle :

Set cmdObject = Form1.Controls.Add("VB.CommandButton", "Command1")
cmdObject.Left = 120
cmdObject.Top = 120
cmdObject.Caption = "Bouton Dynamique"
cmdObject.Visible = True


Pour le supprimer :

Form1.Controls.Remove ("Command1")

Les procédures d'événements sont basées sur le nom de la variable :

Private Sub cmdObject_Click()



--

Loïc Carrère

http://www.asi-concept.fr
Avatar
Loïc Carrère
Bien essayé Gloops mais mon but était bien de supprimer un objet et non
le rendre invisible.

Merci quand même ^^.


Loïc


Loïc Carrère a écrit :
Merci pour vos lumières.



Salut,

A propos de lumières, si le but est que l'objet n'apparaisse plus à l'écran,
on mettra sa propriété Visible à False.

Excuse si tu l'avais déjà fait, quelquefois on voit des questions
surprenantes.



--

Loïc Carrère

http://www.asi-concept.fr