ludoviclemarinel
Messages postés4Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention17 mars 2004
-
17 mars 2004 à 13:44
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 2006
-
17 mars 2004 à 14:30
Salut,
Je voudrais récuperer un controle par son nom : par exemple : Form1.GetControl("Textbox1"),
ceci car j'ai besoin d'effectuer une série d'action sur différents controls.
deuxieme question : Idem, mais sur la collection de forms:
Comment récupérer TOUTES les forms du projet (et pas seulement celles qui sont chargées ?)?
crenaud76
Messages postés4172Date d'inscriptionmercredi 30 juillet 2003StatutMembreDernière intervention 9 juin 200628 17 mars 2004 à 14:30
Pour accéder à un objet par son nom tu peux utilsier la collection de controle de la form
Par exemple pour obtenir une référence à un bouton Command à partir de son nom
Dim Cmd As CommandButton
Set Cmd = Me.Controls("Command1")
Cmd.Caption = " Test"
Pour le Pb des forms, je ne sais pas si c'est possible, mais le soucis, c'est que si tu y arrive, dès que tu vas accéder à une propriété d'une form non chargée, et bien VB va la chargée. Tu ne peux en effet pas travailler sur une form non chargée, alors qd tu fait Form2.Caption = "Test", si form2 n'est pas chargée, VB va la chargée avant de modifier le Caption !
Si tu fait cela sur bcp de forms, tu risques de bouffer de la mémoire pour rien, ou alors n'oublie surtout pas de faire un Unload Form2 après. Mais alors, tes modif seront perdues !!