Bonjour,
J'ai développée les classes clsWindows et clsWindow basée sur l'API Windows pour pouvoir manipuler les fenêtres. clsWindows est une classe collection de clsWindow qui elle-même liste des instance clsWindow pour les fenêtres enfants de manière récursive.
Ainsi, je peux par exemple générer un clic sur une sous-fenêtre windows.find(classname:="...", name:="...").click ou de manière générale remplir une boîte de dialogue, manipuler une liste déroulante,...
Tout fonctionne bien, mais le problème est que clsWindow rassemble les méthodes .click, .write* text:="...", .count,... communes à toutes les fenêtres peu importe leurs classes. Du coup, certaines méthodes ne s'appliquent pas au risque de faire tout et n'importe quoi.
Biensûr, je pourrais rajouter un test If Not className = "..." Then Exit Property/Function/Sub pour ne rien faire par défault, mais j'aimerais implémenter quelque chose la manière suivante :
J'ignore à vrai dire si c'est possible en VBA avec les interfaces Implements. Evidement, le mieux serait d'éviter de duppliquer des parties de code...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Dim window As clsWindow: For Each window In windows If TypeOf window Is clsWindow_edit Then ... If TypeOf window Is clsWindow_textBox Then ... ... Next window
Pouvez-vous m'aider à ce sujet ?
Merci par avance !![]()
Partager