Champs d'un type

Résolu
gambi01 Messages postés 12 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 20 novembre 2007 - 26 janv. 2007 à 08:12
gambi01 Messages postés 12 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 20 novembre 2007 - 26 janv. 2007 à 10:26
bonjour,

J'ai défini un type
Type TTest
    Champ1 As Integer
    Champ2 As Integer
End Type

Y a t'il un moyen d'énumérer les champs qui composent mon type. ?
Je voudrais passer, dans une fonction un nom de champ sous forme de chaine et vérifier si c'est bien un élément de mon type.
Ex :
Pour i = 1 to nombre de champ du type TTest
    debug.print nom de l'élément   ' Doit afficher Champ1 - Champ2
suivant

J'ai cherché sur Google sans succés.

Merci pour vos réponses.

4 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
26 janv. 2007 à 10:21
Soit on fait plusieurs prototypes de fonctions, soit on met un param indiquant le modèle de param envoyé.

ciao...
BruNews, MVP VC++
3
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
26 janv. 2007 à 09:58
un "nom" n'a aucun sens en pareil cas, il n'existe que dans ton code, après compilation c'est un offset par rapport à l'adresse de base de la structure.

ciao...
BruNews, MVP VC++
0
gambi01 Messages postés 12 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 20 novembre 2007
26 janv. 2007 à 10:16
Merci BruNews pour ta rapide réponse.

Je vais expliquer plus clairement mon objectif.
Je veux passer un tableau de type comme paramètre d'une fonction. Le paramètre tableau est de type variant pour accepter n'importe quel type personnalisé.
Type TTest
Champ1 As Integer
End Type

Sub Appel
Dim MonTab(2) As TTest

MonTab(0).Champ1 = 3 ' Ici remplissage du tableau
Test MonTab()

function Test(MonTab() as variant)
' Ici je voudrais faire ceci
Si existe Champ1 dans le type du tableau
Traitement

Ne connaissant pas par avance le type, je suis obligé de tester les éléments qui composent le type pour faire le traitement.

Pas d'autres moyen que d'aller trifouiller dans la mémoire ?
0
gambi01 Messages postés 12 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 20 novembre 2007
26 janv. 2007 à 10:26
Je crois que je vais me diriger effectivement vers ce type de solutions même si cela alourdi le projet.

Merci encore pour ton aide
0
Rejoignez-nous