Vianneyp
Messages postés82Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 2010
-
8 juin 2008 à 22:34
Vianneyp
Messages postés82Date d'inscriptionjeudi 6 juillet 2006StatutMembreDernière intervention 6 janvier 2010
-
9 juin 2008 à 10:38
Bonsoir,
Je vais devoir solliciter votre aide une fois encore :)
J'ai crée un control personnalisé et j'en ai disposé un certain nombre une feuille. Maintenant je souhaiterai pouvoir accéder aux propriétés de l'un d'entre eux connaissant son nom (stocké dans une srting).Il faudrai donc que je puisse modifier une même propriété a l'un de mes x controls personnalisés.D'après ce que j'ai compris on ne peut pas,en vb6,convertir directement une string en object.
Je suis tombé sur la source suivante :
Dim FrmObj As Form, TempObj As Form
Dim StrVal As String
Dim Find As Boolean
Find = False
StrVal = "Form2"
For Each TempObj In Forms
If TempObj.Name = StrVal Then
Set FrmObj = TempObj
Find = True
End If
Next
If Find = True Then FrmObj.Show
Que je n'arrive pas a adapter :
For Each TempObj In Forms
If TempObj.Name = LNode Then
Set FrmObj = TempObj
FrmObj.Tag = "OK"
End If
Next
En faite il ne trouve même pas la propriété name de TempObj avec mon control.
Qu'est ce que je fait de travers ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 8 juin 2008 à 23:47
Salut
Le principe reste le même.
Dans l'exemple, TempObj est dimensionné comme une Form.
Toi tu cherches un autre objet, un control peronnalisé (on ne sait pas quoi) : Suffit donc de le dimensionner du même type et de faire la recherche parmi Controls
au lieu de Forms
Dim TempObj As Object
For Each TempObj In maForme.Controls
...
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)