Classe avec tableau

Résolu
cs_santiago69 Messages postés 91 Date d'inscription jeudi 18 novembre 2004 Statut Membre Dernière intervention 17 décembre 2008 - 22 mai 2007 à 16:50
cs_santiago69 Messages postés 91 Date d'inscription jeudi 18 novembre 2004 Statut Membre Dernière intervention 17 décembre 2008 - 23 mai 2007 à 13:24
Salut a tous,
Je cherche a faire une classe avec un tableau integre.
Et je voudrais que l'on puisse faire reference au tableau de la class avec des parentheses juste apres le nom de la classe.

Exemple : une classe liste avec :
- les methodes Add et Delete
- un tableau Items() As Long

Et le code suivant :
'Je cree l'objet liste
dim maliste as liste
'J'ajoute une valeur (au hasard 32 dans la case 1 du tableau Item)
'Je n'ai pas de probleme pour implementer cette methode
maliste.Add(1, 32)
'Je voudrais pouvoir faire
Msgbox maliste(1)
'Sans etre oblige de faire
Msgbox maliste.Items(1)
'Et la par contre j'ai un pb

Merci a tous
Santiago

il y a 10 types de personnes : ceux qui comprennent le binaire et ceux qui ne le comprennent pas.

5 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
22 mai 2007 à 17:14
Salut,
Regarde si ceci peu t'aider.
Cela m'a permis de faire ceci.

'Classe Liste
Option Explicit

Private m_Items() As Long

Public Sub Add(idx As Integer, ValIdx As Integer)
If UBound(m_Items) < idx Then ReDim Preserve m_Items(idx)
m_Items(idx) = ValIdx

End Sub<hr />

Private Sub Class_Initialize()
   ReDim m_Items(0)
End Sub<hr />
Public Property Get Items(idx As Integer) As Long
On Error Resume Next
   Items = m_Items(idx)
End Property<hr />

, ----
[code.aspx?ID=41455 By Renfield]

Option Explicit

'La feuille
Private Sub Form_Load()
Dim MaListe As New Liste

Call MaListe.Add(1, 32)
MsgBox MaListe(1)

End Sub<hr />, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
3
cs_moustachu Messages postés 1079 Date d'inscription jeudi 14 novembre 2002 Statut Membre Dernière intervention 1 janvier 2012
23 mai 2007 à 12:09
Bonjour,

Si tu souhaites Add, Delete, Item, dans une propriété de ta classe passe plutôt par un objet Collection, (à moins que tu ais vraiment besoin d'un tableau bien sûr...) qui les implémente directement.

++
 Moustachu
0
cs_santiago69 Messages postés 91 Date d'inscription jeudi 18 novembre 2004 Statut Membre Dernière intervention 17 décembre 2008
23 mai 2007 à 12:12
Ah ben ouais c'est pour ca.
Bon alors j'ai bien tout compris. mais la je fais une petite appli avec VBA.
Et dans VBA y'a des classes mais pas de proprietes qui permettent de definir une fonction par defaut.
Donc Voila, y faut pas abuser du VBA

Merci et a +

___________________________
il y a 10 types de personnes : ceux qui comprennent le binaire et ceux qui ne le comprennent pas.
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
23 mai 2007 à 13:13
Salut,
Penses à appuyer sur réponse acceptée sur le ou les post qui ont pu t'aider, si tu estimes que ton problème est résolu bien entendu

@+: Ju£i?n
Pensez: Réponse acceptée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_santiago69 Messages postés 91 Date d'inscription jeudi 18 novembre 2004 Statut Membre Dernière intervention 17 décembre 2008
23 mai 2007 à 13:24
et merci a tous

il y a 10 types de personnes : ceux qui comprennent le binaire et ceux qui ne le comprennent pas.
0
Rejoignez-nous