0/5 (2 avis)
Vue 6 011 fois - Téléchargée 462 fois
L'ensemble comporte une classe pour enregistrer une collection de "form" et un module pour manipuler la collection. CappFenetres.cls Option Explicit Private m_appFenetres As Collection Public Function Add(AFenetre As Form, Optional AValue As String) As Form 'définir les propriétés passées à la méthode If Len(AValue) = 0 Then m_appFenetres.Add AFenetre Else m_appFenetres.Add AFenetre, AValue End If 'renvoyer l'objet créé Set Add = AFenetre End Function Public Property Get ItemInt(AValue As Integer) As Form 'CAppFenetre 'Utilisé pour référencer un élément dans la collection 'AValue contient l'index dans la collection Set ItemInt = m_appFenetres.Item(AValue) End Property Public Property Get ItemStr(AValue As String) As Form 'CAppFenetre 'Utilisé pour référencer un élément dans la collection 'AValue contient la clé dans la collection Set ItemStr = m_appFenetres.Item(AValue) End Property Public Property Get Count() As Long 'utilisée pour lire le nombre d'éléments dans la Count = m_appFenetres.Count End Property Public Sub Remove(AValue As String) 'utilisée lors de la suppression d'un élément de la collection 'AValue contient la clé m_appFenetres.Remove AValue End Sub Public Property Get NewEnum() As IUnknown 'Cette propriété vous permet d'énumérer 'cette collection avec la syntaxe For...Each Set NewEnum = m_appFenetres.[_NewEnum] End Property Private Sub Class_Initialize() 'Crée la collection lorsque cette classe est créée Set m_appFenetres = New Collection End Sub Private Sub Class_Terminate() 'Détruit la collection lorsque cette classe est détruite Set m_appFenetres = Nothing End Sub Chaque fenêtre s'enregistre dans la collection par sa méthode load et se retire de la collection par sa méthode unload : Option Explicit Private Sub Form_Load() 'Déclarer la fenetre dans la collection "fenetres" prcAddFenetreInCollection Me End Sub Private Sub Form_Unload(Cancel As Integer) 'Oter la fenetre de la collection "Fenetre" g_colFenetres.Remove Me.hWnd End Sub
25 avril 2008 à 10:35
tel quel je ne vois pas non plus l'intérêt.
un collection d'UNE collection?...
d'ailleurs c'est un peu le même principe pour ta précédente source.
24 avril 2008 à 14:41
parce que là, ca fait double emploi...
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.