VB 6 - Spécifier Type composant pour formulaire "voulu".

Résolu
geoxdd4 Messages postés 9 Date d'inscription lundi 13 octobre 2003 Statut Membre Dernière intervention 17 mars 2008 - 19 févr. 2008 à 15:58
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 - 20 févr. 2008 à 09:23
Euhm... désolé 

J'avais une question, il y a très peu de temps, mais je me retrouve avec un autre problème.
J'ai un formulaire passé en paramètre dans une procédire.

Je voudrais controler les composants (textbox, labels...) du formulaire passé en paramètre en connaissant leur nom (je les ai stockés dans ma base de données).

donc en gros, j'ai ceci.

MonformulairePasséEnParamètre . MonComposantDepuisBaseDeDonnees . Propriete = ValeurBaseDepuisDonnees

Le formulaire pointe bien vers celui désiré, le composant (comme c'est le nom du composant que je vais chercher depuis ma base de données) n'est pas reconnu en tant que "composant souhaité du formulaire souhaité". Ce n'est pas le bon type. Je ne sais pas comment le faire passer en tant que tel.

Avec SET ? et DIM en tant que "type composant" voulu ?...

J'ai du mal...

Merci d'avance.

4 réponses

Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
19 févr. 2008 à 16:45
Pour illustrer ce que propose NHenry et comme je suppose que tu as le nom de al propriété dans une string aussi, voici une boucle sur la liste des controles d'un formulaire et un appel à CallByname pour modifier la valeur d'une de ces propriété a patir du nom de la propriété

Dim C As Control

For Each C In LaForm.Controls
If C.Name = Nomducontrole Then
CallByName(C, NomDeLaPropriété, Valeur, vbSet) ' J'ai un doute sur le dernier param, voir l'aide en ligne sur CallByName()
Exit For
End If
Next
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
19 févr. 2008 à 16:11
Bonjour

Parcours la collection Controls pour récupérer le composant désiré à partir de son nom.

si ce n'est pas la bonne réponse,; peux-tu poster la partie de ton code qui pose pb stp .

Dans Word, j'Excel. (juste pour la citation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
geoxdd4 Messages postés 9 Date d'inscription lundi 13 octobre 2003 Statut Membre Dernière intervention 17 mars 2008
20 févr. 2008 à 08:22
Merci Kristof_Koder, c'est quelque chose dans ce bout là qu'il me faut.

J'ai bien cherché dans l'aide.
J'allais encore demander quelque chose car je rencontrai une erreur, mais il semble qu'en utilisant "vbLet" en propriété, ça fonctionne... (pour les labels pour le moment). Je continue avec cette solution.

Merci de votre aide :) C'est sympa.
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
20 févr. 2008 à 09:23
Effectivement, vbLet plutot que vbSet (qui sera à utiliser si la propriété accepte une valeur de type objet)
0
Rejoignez-nous