Contrôles ActiveX
La technologie des contrôles ActiveX repose sur une base composée d’objets COM, d’objets connectables, de documents composés, de pages de propriétés, d’automatisation OLE, de persistance d’objet et d’objets de police et d’image fournis par le système. Comme indiqué ci-dessous, chacune de ces technologies de base joue un rôle dans les contrôles.
-
COM
-
Un contrôle est essentiellement un objet COM qui expose l’interface IUnknown, via laquelle les clients peuvent obtenir des pointeurs vers ses autres interfaces. Les contrôles peuvent prendre en charge les licences via IClassFactory2 et l’autoinscription. Consultez Le modèle objet composant pour plus d’informations sur COM, les licences et l’autoinscription.
-
objets connectables
-
Les contrôles peuvent prendre en charge les interfaces sortantes via des objets connectables afin que le contrôle puisse communiquer avec son client. Par exemple, une interface sortante peut déclencher une action dans le client, peut informer le client d’une modification du contrôle ou demander l’autorisation du client avant que le contrôle n’effectue une action. Consultez événements dans COM et objets connectables pour plus d’informations sur le fonctionnement des objets connectables.
-
transfert de données uniforme
-
Les contrôles peuvent prendre en charge le déplacement et la suppression dans un conteneur avec de l’aide de leur conteneur. Consultez IOleInPlaceObjectWindowless ::GetDropTarget pour plus d’informations sur le glisser-déplacer.
-
documents composés
-
Un contrôle peut être un objet actif sur place qui peut être incorporé dans un client contenant. Un utilisateur final active le contrôle pour lancer une action dans l’application conteneur. Consultez documents composés pour plus d’informations sur l’activation sur place et d’autres interfaces de documents composés.
-
pages de propriétés
-
Les contrôles peuvent fournir des pages de propriétés afin que les utilisateurs finaux puissent afficher et modifier les propriétés du contrôle. Consultez pages de propriétés et feuilles de propriétés pour plus d’informations sur le fonctionnement des pages de propriétés.
-
automatisation OLE
-
Les contrôles peuvent fournir une programmabilité via l’automatisation OLE afin que les clients puissent tirer parti des fonctionnalités du contrôle via un langage de programmation fourni par le client. Pour plus d’informations sur l’automatisation OLE, consultez la section OLE Automation.
-
stockage persistant
-
Un contrôle peut implémenter une ou plusieurs interfaces de persistance pour prendre en charge la persistance de son état. L’implémenteur de contrôle doit décider quels types de persistance sont les plus importants et implémenter les interfaces de persistance appropriées. Le client décide de l’interface qu’il préfère utiliser. Consultez Le modèle objet composant pour plus d’informations sur toutes les interfaces de persistance.
-
objets Police et image
-
Les contrôles peuvent utiliser ces objets fournis par le système pour fournir une représentation visuelle d’eux-mêmes au sein du client. L’objet de police implémente plusieurs interfaces, notamment IFont et IFontDisp. Un objet de police peut être créé avec OleCreateFontIndirect. L’objet image implémente également plusieurs interfaces, notamment IPicture et IPictureDisp. Un objet image peut être créé à l’aide de oleCreatePictureIndirect et peut être chargé à partir d’un flux avec OleLoadPicture.
Il est important de comprendre que ces fonctionnalités peuvent être utilisées dans n’importe quel objet OLE. Il n’est pas nécessaire d’implémenter un contrôle pour utiliser ces fonctionnalités. En outre, la seule interface requise sur un contrôle est IUnknown. Le contrôle prend éventuellement en charge d’autres interfaces en fonction de la nécessité de prendre en charge les fonctionnalités associées.
En plus de ces fonctionnalités, les interfaces et fonctions suivantes sont spécifiques à la technologie des contrôles : IOleControl, IOleControlSite, ISimpleFrameSiteet OleTranslateColor. En outre, les contrôles sont un ensemble de normes pour les propriétés et les méthodes qu’un contrôle ou un conteneur de contrôle peut prendre en charge.
Note
La bibliothèque système OleAut32.dll contient des implémentations des fonctions (OleCreatePropertyFrame, OleCreatePropertyFrameIndirect, OleCreateFontIndirect, OleCreatePictureIndirect, OleLoadPictureet OleTranslateColor). En outre, OleAut32.dll contient les implémentations des objets de police et d’image standard, ainsi qu’une bibliothèque de types pour toutes les interfaces utilisées avec des contrôles, ainsi que les structures de données et les types de données supplémentaires.
Pour plus d’informations, consultez les rubriques suivantes :
- architecture des contrôles ActiveX
- interfaces de contrôles ActiveX
- propriétés et méthodes
- des événements de contrôle
- de représentation visuelle
- gestion du clavier pour les contrôles
- persistance
- d’inscription et de licence
Rubriques connexes