2017-05-18 5 views
-2

Je crée une enveloppe d'un contrôle, une interface de l'objet ocx. J'ai dû créer un projet ATL puis ajouter/charger le fichier ocx. Il a exposé les propriétés, les méthodes et les événements. Je suis capable de contrôler/utiliser ses propriétés et ses méthodes, mais je suis restée bloquée sur les événements, en particulier lors de son utilisation.VC++: Comment capturer les événements déclenchés à partir d'un fichier ActiveX (.ocx) dans un projet ATL

L'ai cherché sur google et la plupart des guides que j'ai trouvés le font à partir de zéro ou des événements d'ATL lui-même. Ce que j'essaie de réaliser, c'est d'utiliser les événements exposés de l'ocx. Avez-vous une idée?

Merci beaucoup.

Répondre

0

Dans ATL vos options standard pour gérer les événements COM est d'utiliser IConnectionPointContainer et amis comme expliqué dans Event Handling and ATL:

Pour plus d'informations sur la façon de déclencher des événements et mettre en œuvre des points de connexion, lisez ATL Connection Points.

Ou, et en particulier pour les événements de contrôle ActiveX, votre deuxième option est IDispEventImpl références de classe là par le premier lien ainsi:

IDispEventImpl est expliqué en détail sur d'autres ressources aussi, par exemple: