Utilisation des événements avec l’objet Application ou Bases de données
Pour créer une routine d'événement pour un événement affectant l'objet Application ou Databases, effectuez les trois étapes suivantes :
1.Déclarez une variable objet dans un module de classe afin de répondre aux événements.
2.Rédiger les procédures spécifiques de l'événement.
3.Initialiser l'objet déclaré d'un autre module...
Déclarer la variable d'objet
Avant de pouvoir écrire des procédures pour les événements des objets Application ou Databases, vous devez créer un nouveau module de classe et déclarer un objet du type Application ou Databases avec des événements. Supposons qu'un nouveau module de classe appelé "EventClassModule" soit créé. Le nouveau module de classe contient le code suivant :
Public WithEvents App As FlexPro.Application
ou
Public WithEvents Databases As FlexPro.Databases
Rédaction de procédures d'événements
Une fois que le nouvel objet avec événements a été déclaré, il apparaît dans la liste déroulante Objet du module de classe, et vous pouvez écrire des procédures d'événements pour le nouvel objet. (Si vous sélectionnez le nouvel objet dans la liste "Objet", les événements valides pour l'objet sont répertoriés dans la liste déroulante " Procédure" ) Sélectionnez un événement dans cette liste. Une procédure vide est ajoutée au module de classe.
Sub privé App_DatabaseModified(ByVal Database As Object)
End Sub
ou
Sub privée Databases_BeforeDatabaseClose(ByVal Database As Object)
End Sub
Initialisation de l'objet déclaré
Avant que la procédure puisse être exécutée, une connexion doit être établie entre l'objet déclaré dans le module de classe ("App" ou "Databases" dans cet exemple) et l'objet Application ou Databases. Cette connexion peut être mise en place en utilisant le code suivant à partir de n'importe quel module :
Dim X As New EventClassModule
Sub Register_Event_Handler()
Set X.App = FlexPro.Application
Set X.Databases = FlexPro.Databases
End Sub
Lancez la procédure "Register_Event_Handler". Une fois la procédure exécutée, l'objet App du module de classe fait référence à l'objet FlexPro Application et à l'objet base de données par rapport à l'objet Databases. Les procédures d'événement du module de classe sont ensuite appelées dès que les événements se produisent.