Sommaire: Création d’un composant EXE ActiveX
– Création du projet Coffee
– Affichage de feuilles depuis la classe CoffeeMonitor
– Création du projet de test CoffeeWatch
– Comportement out-of-process des feuilles modales et non modales
– Émission d’un événement de notification asynchrone
– Réception d’un événement de notification asynchrone
– Partage du CoffeeMonitor
– Utilisation du CoffeeMonitor partagé
– Création et test de l’exécutable Coffee
– Récapitulatif de la création d’un composant EXE ActiveX
♣ Extrait du cours
Exemples d’applications : Coffee2.vbp, CoffWat2.vbp,MTCoffee.vbp
Les exemples Coffee2.vbp et CoffWat2.vbp, abordés dans ce chapitre, contiennent du code source plus développé. Outre les notifications asynchrones recourant aux événements, ils contiennent une version alternative utilisant les méthodes de rappel sur une interface secondaire, ainsi qu’un exemple de minuteries entièrement codées dont vous pourrez vous servir à la place du contrôle Timer. MTCoffee illustre certaines caractéristiques du traitement multithread. Si ces exemples d’applications sont installés, vous les trouverez dans le sous-dossier \CompTool\ActvComp\Coffee du dossier des exemples de Visual Basic (\Vb\Samples\CompTool\ActvComp\Coffee).
Création du projet Coffee
Cette section décrit la création du projet Coffee et de ses classes de feuilles CoffeeMonitor et TestForm.
– Pour créer le projet Coffee
1 Dans le menu Fichier, cliquez sur Nouveau projet.
2 Dans la boîte de dialogue Nouveau projet, double-cliquez sur l’icône EXE ActiveX. Visual Basic ajoute automatiquement le module de classe, Class1, au nouveau projet.
3 Appuyez sur F4 pour basculer vers la fenêtre Propriétés. Double-cliquez sur la propriété Nom et modifiez-la en CoffeeMonitor. C’est le nom que vous utiliserez pour créez des objets à partir de cette classe.
La valeur par défaut attribuée à la propriété Instancing est MultiUse. Elle permet aux clients de créer plusieurs instances de la classe CoffeeMonitor. Pour une description complète de la propriété Instancing, reportez-vous à la section « Propriété Instancing des classes fournies par les composants ActiveX » du chapitre 6 « Principes généraux de création des composants ».
Affichage de feuilles depuis la classe CoffeeMonitor
Les composants out-of-process peuvent afficher à la fois des feuilles modales et non modales. La première utilisation de CoffeeMonitor aura donc pour but de démontrer cela, car les résultats obtenus ne correspondront peut-être pas à ce que vous attendez.
La procédure décrite dans cette section ajoute une méthode ShowForm à la classe CoffeeMonitor, ainsi que des constantes publiques destinées à être utilisées avec cette méthode.
– Pour afficher des feuilles depuis la classe CoffeeMonitor
1 Dans la fenêtre Explorateur de projet, double-cliquez sur CoffeeMonitor (ou bien cliquez sur cette option puis sur le bouton Code dans la barre d’outils de la fenêtre Explorateur de projet), afin d’ouvrir sa fenêtre de code.
2 Dans la section Déclarations, ajoutez l’énumération publique suivante :
Option Explicit
Public Enum cfeModality
cfeModal = vbModal
cfeModeless = vbModeless
End Enum