IOleObjectImpl, classe
Cette classe implémente IUnknown
et est l’interface principale par le biais de laquelle un conteneur communique avec un contrôle.
Important
Cette classe et ses membres ne peuvent pas être utilisés dans les applications qui s’exécutent dans Windows Runtime.
Syntaxe
template<class T>
class ATL_NO_VTABLE IOleObjectImpl : public IOleObject
Paramètres
T
Votre classe, dérivée de IOleObjectImpl
.
Membres
Méthodes publiques
Nom | Description |
---|---|
IOleObjectImpl ::Conseiller | Établit une connexion de conseil avec le contrôle. |
IOleObjectImpl ::Close | Modifie l’état du contrôle de l’exécution au chargement. |
IOleObjectImpl ::D oVerb | Indique au contrôle d’effectuer l’une de ses actions énumérées. |
IOleObjectImpl ::D oVerbDiscardUndo | Indique au contrôle d’ignorer tout état d’annulation qu’il conserve. |
IOleObjectImpl ::D oVerbHide | Indique au contrôle de supprimer son interface utilisateur de l’affichage. |
IOleObjectImpl ::D oVerbInPlaceActivate | Exécute le contrôle et installe sa fenêtre, mais n’installe pas l’interface utilisateur du contrôle. |
IOleObjectImpl ::D oVerbOpen | Provoque l’ouverture du contrôle dans une fenêtre distincte. |
IOleObjectImpl ::D oVerbPrimary | Exécute l’action spécifiée lorsque l’utilisateur double-clique sur le contrôle. Le contrôle définit l’action, généralement pour activer le contrôle sur place. |
IOleObjectImpl ::D oVerbShow | Affiche un contrôle nouvellement inséré à l’utilisateur. |
IOleObjectImpl ::D oVerbUIActivate | Active le contrôle sur place et affiche l’interface utilisateur du contrôle, comme les menus et les barres d’outils. |
IOleObjectImpl ::EnumAdvise | Énumère les connexions de conseil du contrôle. |
IOleObjectImpl ::EnumVerbs | Énumère les actions du contrôle. |
IOleObjectImpl ::GetClientSite | Récupère le site client du contrôle. |
IOleObjectImpl ::GetClipboardData | Récupère les données du Presse-papiers. L’implémentation ATL retourne E_NOTIMPL. |
IOleObjectImpl ::GetExtent | Récupère l’étendue de la zone d’affichage du contrôle. |
IOleObjectImpl ::GetMiscStatus | Récupère l’état du contrôle. |
IOleObjectImpl ::GetMoniker | Récupère le moniker du contrôle. L’implémentation ATL retourne E_NOTIMPL. |
IOleObjectImpl ::GetUserClassID | Récupère l’identificateur de classe du contrôle. |
IOleObjectImpl ::GetUserType | Récupère le nom de type utilisateur du contrôle. |
IOleObjectImpl ::InitFromData | Initialise le contrôle à partir des données sélectionnées. L’implémentation ATL retourne E_NOTIMPL. |
IOleObjectImpl ::IsUpToDate | Vérifie si le contrôle est à jour. L’implémentation ATL retourne S_OK. |
IOleObjectImpl ::OnPostVerbDiscardUndo | Appelé par DoVerbDiscardUndo après l’abandon de l’état d’annulation. |
IOleObjectImpl ::OnPostVerbHide | Appelé par DoVerbHide une fois le contrôle masqué. |
IOleObjectImpl ::OnPostVerbInPlaceActivate | Appelé par DoVerbInPlaceActivate après l’activation du contrôle. |
IOleObjectImpl ::OnPostVerbOpen | Appelé par DoVerbOpen après l’ouverture du contrôle pour modification dans une fenêtre distincte. |
IOleObjectImpl ::OnPostVerbShow | Appelé par DoVerbShow après que le contrôle a été rendu visible. |
IOleObjectImpl ::OnPostVerbUIActivate | Appelé par DoVerbUIActivate après l’activation de l’interface utilisateur du contrôle. |
IOleObjectImpl ::OnPreVerbDiscardUndo | Appelé par DoVerbDiscardUndo avant l’abandon de l’état d’annulation. |
IOleObjectImpl ::OnPreVerbHide | Appelé par DoVerbHide avant que le contrôle ne soit masqué. |
IOleObjectImpl ::OnPreVerbInPlaceActivate | Appelé par DoVerbInPlaceActivate avant l’activation du contrôle. |
IOleObjectImpl ::OnPreVerbOpen | Appelé par DoVerbOpen avant l’ouverture du contrôle pour modification dans une fenêtre distincte. |
IOleObjectImpl ::OnPreVerbShow | Appelé par DoVerbShow avant que le contrôle n’ait été rendu visible. |
IOleObjectImpl ::OnPreVerbUIActivate | Appelé par DoVerbUIActivate avant l’activation de l’interface utilisateur du contrôle. |
IOleObjectImpl ::SetClientSite | Indique au contrôle son site client dans le conteneur. |
IOleObjectImpl ::SetColorScheme | Recommande un jeu de couleurs à l’application du contrôle, le cas échéant. L’implémentation ATL retourne E_NOTIMPL. |
IOleObjectImpl ::SetExtent | Définit l’étendue de la zone d’affichage du contrôle. |
IOleObjectImpl ::SetHostNames | Indique au contrôle les noms de l’application conteneur et du document conteneur. |
IOleObjectImpl ::SetMoniker | Indique au contrôle ce que son moniker est. L’implémentation ATL retourne E_NOTIMPL. |
IOleObjectImpl ::Unadvise | Supprime une connexion de conseil avec le contrôle. |
IOleObjectImpl ::Update | Met à jour le contrôle. L’implémentation ATL retourne S_OK. |
Notes
L’interface IOleObject est l’interface principale via laquelle un conteneur communique avec un contrôle. La classe IOleObjectImpl
fournit une implémentation par défaut de cette interface et implémente en envoyant des IUnknown
informations à l’appareil de vidage dans les builds de débogage.
Didacticiel ATL sur les articles connexes, création d’un projet ATL
Hiérarchie d'héritage
IOleObject
IOleObjectImpl
Spécifications
En-tête : atlctl.h
IOleObjectImpl ::Conseiller
Établit une connexion de conseil avec le contrôle.
STDMETHOD(Advise)(
IAdviseSink* pAdvSink,
DWORD* pdwConnection);
Notes
Voir IOleObject ::Conseiller dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::Close
Modifie l’état du contrôle de l’exécution au chargement.
STDMETHOD(Close)(DWORD dwSaveOption);
Notes
Désactive le contrôle et détruit la fenêtre de contrôle s’il existe. Si le membre de données de la classe de contrôle CComControlBase ::m_bRequiresSave a la valeur TRUE et que le paramètre dwSaveOption est OLECLOSE_SAVEIFDIRTY ou OLECLOSE_PROMPTSAVE, les propriétés du contrôle sont enregistrées avant la fermeture.
Les pointeurs conservés dans les membres de données de la classe de contrôle CComControlBase ::m_spInPlaceSite et CComControlBase ::m_spAdviseSink sont publiés, et les membres de données CComControlBase ::m_bNegotiatedWnd, CComControlBase ::m_bWndless et CComControlBase ::m_bInPlaceSiteEx sont définis sur FALSE.
Voir IOleObject ::Fermer dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::D oVerb
Indique au contrôle d’effectuer l’une de ses actions énumérées.
STDMETHOD(DoVerb)(
LONG iVerb,
LPMSG /* pMsg */,
IOleClientSite* pActiveSite,
LONG /* lindex */,
HWND hwndParent,
LPCRECT lprcPosRect);
Notes
Selon la valeur de iVerb
, l’une des fonctions d’assistance ATL DoVerb
est appelée comme suit :
Valeur iVerb | Fonction d’assistance DoVerb appelée |
---|---|
OLEIVERB_DISCARDUNDOSTATE | DoVerbDiscardUndo |
OLEIVERB_HIDE | DoVerbHide |
OLEIVERB_INPLACEACTIVATE | DoVerbInPlaceActivate |
OLEIVERB_OPEN | DoVerbOpen |
OLEIVERB_PRIMARY | DoVerbPrimary |
OLEIVERB_PROPERTIES | CComControlBase ::D oVerbProperties |
OLEIVERB_SHOW | DoVerbShow |
OLEIVERB_UIACTIVATE | DoVerbUIActivate |
Consultez IOleObject ::D oVerb dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::D oVerbDiscardUndo
Indique au contrôle d’ignorer tout état d’annulation qu’il conserve.
HRESULT DoVerbDiscardUndo(LPCRECT /* prcPosRect */, HWND /* hwndParent */);
Paramètres
prcPosRec
[in] Pointeur vers le rectangle dans lequel le conteneur souhaite que le contrôle se dessine.
hwndParent
[in] Handle de la fenêtre contenant le contrôle.
Valeur de retour
Retourne S_OK.
IOleObjectImpl ::D oVerbHide
Désactive et supprime l’interface utilisateur du contrôle et masque le contrôle.
HRESULT DoVerbHide(LPCRECT /* prcPosRect */, HWND /* hwndParent */);
Paramètres
prcPosRec
[in] Pointeur vers le rectangle dans lequel le conteneur souhaite que le contrôle se dessine.
hwndParent
[in] Handle de la fenêtre contenant le contrôle. Non utilisé dans l’implémentation ATL.
Valeur de retour
Retourne S_OK.
IOleObjectImpl ::D oVerbInPlaceActivate
Exécute le contrôle et installe sa fenêtre, mais n’installe pas l’interface utilisateur du contrôle.
HRESULT DoVerbInPlaceActivate(LPCRECT prcPosRect, HWND /* hwndParent */);
Paramètres
prcPosRec
[in] Pointeur vers le rectangle dans lequel le conteneur souhaite que le contrôle se dessine.
hwndParent
[in] Handle de la fenêtre contenant le contrôle. Non utilisé dans l’implémentation ATL.
Valeur de retour
Une des valeurs HRESULT standard.
Notes
Active le contrôle en place en appelant CComControlBase ::InPlaceActivate. Sauf si le membre m_bWindowOnly
de données de la classe de contrôle a la valeur TRUE, DoVerbInPlaceActivate
tente d’abord d’activer le contrôle en tant que contrôle sans fenêtre (possible uniquement si le conteneur prend en charge IOleInPlaceSiteWindowless). Si cela échoue, la fonction tente d’activer le contrôle avec des fonctionnalités étendues (possible uniquement si le conteneur prend en charge IOleInPlaceSiteEx). Si cela échoue, la fonction tente d’activer le contrôle sans fonctionnalités étendues (possible uniquement si le conteneur prend en charge IOleInPlaceSite). Si l’activation réussit, la fonction informe le conteneur que le contrôle a été activé.
IOleObjectImpl ::D oVerbOpen
Provoque l’ouverture du contrôle dans une fenêtre distincte.
HRESULT DoVerbOpen(LPCRECT /* prcPosRect */, HWND /* hwndParent */);
Paramètres
prcPosRec
[in] Pointeur vers le rectangle dans lequel le conteneur souhaite que le contrôle se dessine.
hwndParent
[in] Handle de la fenêtre contenant le contrôle.
Valeur de retour
Retourne S_OK.
IOleObjectImpl ::D oVerbPrimary
Définit l’action effectuée lorsque l’utilisateur double-clique sur le contrôle.
HRESULT DoVerbPrimary(LPCRECT prcPosRect, HWND hwndParent);
Paramètres
prcPosRec
[in] Pointeur vers le rectangle dans lequel le conteneur souhaite que le contrôle se dessine.
hwndParent
[in] Handle de la fenêtre contenant le contrôle.
Valeur de retour
Une des valeurs HRESULT standard.
Notes
Par défaut, définissez pour afficher les pages de propriétés. Vous pouvez remplacer cela dans votre classe de contrôle pour appeler un autre comportement en double-clic ; par exemple, lire une vidéo ou aller en place actif.
IOleObjectImpl ::D oVerbShow
Indique au conteneur de rendre le contrôle visible.
HRESULT DoVerbShow(LPCRECT prcPosRect, HWND /* hwndParent */);
Paramètres
prcPosRec
[in] Pointeur vers le rectangle dans lequel le conteneur souhaite que le contrôle se dessine.
hwndParent
[in] Handle de la fenêtre contenant le contrôle. Non utilisé dans l’implémentation ATL.
Valeur de retour
Une des valeurs HRESULT standard.
IOleObjectImpl ::D oVerbUIActivate
Active l’interface utilisateur du contrôle et informe le conteneur que ses menus sont remplacés par des menus composites.
HRESULT DoVerbUIActivate(LPCRECT prcPosRect, HWND /* hwndParent */);
Paramètres
prcPosRec
[in] Pointeur vers le rectangle dans lequel le conteneur souhaite que le contrôle se dessine.
hwndParent
[in] Handle de la fenêtre contenant le contrôle. Non utilisé dans l’implémentation ATL.
Valeur de retour
Une des valeurs HRESULT standard.
IOleObjectImpl ::EnumAdvise
Fournit une énumération des connexions de conseil inscrites pour ce contrôle.
STDMETHOD(EnumAdvise)(IEnumSTATDATA** ppenumAdvise);
Notes
Voir IOleObject ::EnumAdvise dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::EnumVerbs
Fournit une énumération d’actions inscrites (verbes) pour ce contrôle en appelant OleRegEnumVerbs
.
STDMETHOD(EnumVerbs)(IEnumOLEVERB** ppEnumOleVerb);
Notes
Vous pouvez ajouter des verbes au fichier .rgs de votre projet. Par exemple, consultez CIRCCTL. RGS dans l’exemple CIRC .
Voir IOleObject ::EnumVerbs dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::GetClientSite
Place le pointeur dans le membre de données de la classe de contrôle CComControlBase ::m_spClientSite dans ppClientSite et incrémente le nombre de références sur le pointeur.
STDMETHOD(GetClientSite)(IOleClientSite** ppClientSite);
Notes
Voir IOleObject ::GetClientSite dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::GetClipboardData
Récupère les données du Presse-papiers.
STDMETHOD(GetClipboardData)(
DWORD /* dwReserved */,
IDataObject** /* ppDataObject */);
Valeur de retour
Retourne E_NOTIMPL.
Notes
Voir IOleObject ::GetClipboardData dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::GetExtent
Récupère la taille d’affichage d’un contrôle en cours d’exécution en unités HIMETRIC (0,01 millimètre par unité).
STDMETHOD(GetExtent)(
DWORD dwDrawAspect,
SIZEL* psizel);
Notes
La taille est stockée dans le membre de données de la classe de contrôle CComControlBase ::m_sizeExtent.
Voir IOleObject ::GetExtent dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::GetMiscStatus
Retourne un pointeur vers les informations d’état inscrites pour le contrôle en appelant OleRegGetMiscStatus
.
STDMETHOD(GetMiscStatus)(
DWORD dwAspect,
DWORD* pdwStatus);
Notes
Les informations d’état incluent les comportements pris en charge par les données de contrôle et de présentation. Vous pouvez ajouter des informations d’état au fichier .rgs de votre projet.
Voir IOleObject ::GetMiscStatus dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::GetMoniker
Récupère le moniker du contrôle.
STDMETHOD(GetMoniker)(
DWORD /* dwAssign */,
DWORD /* dwWhichMoniker */,
IMoniker** /* ppmk */);
Valeur de retour
Retourne E_NOTIMPL.
Notes
Voir IOleObject ::GetMoniker dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::GetUserClassID
Retourne l’identificateur de classe du contrôle.
STDMETHOD(GetUserClassID)(CLSID* pClsid);
Notes
Voir IOleObject ::GetUserClassID dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::GetUserType
Retourne le nom de type utilisateur du contrôle en appelant OleRegGetUserType
.
STDMETHOD(GetUserType)(
DWORD dwFormOfType,
LPOLESTR* pszUserType);
Notes
Le nom de type utilisateur est utilisé pour l’affichage dans les éléments d’interfaces utilisateur, tels que les menus et les boîtes de dialogue. Vous pouvez modifier le nom de type utilisateur dans le fichier .rgs de votre projet.
Voir IOleObject ::GetUserType dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::InitFromData
Initialise le contrôle à partir des données sélectionnées.
STDMETHOD(InitFromData)(
IDataObject* /* pDataObject */,
BOOL /* fCreation */,
DWORD /* dwReserved */);
Valeur de retour
Retourne E_NOTIMPL.
Notes
Voir IOleObject ::InitFromData dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::IsUpToDate
Vérifie si le contrôle est à jour.
STDMETHOD(IsUpToDate)(void);
Valeur de retour
Retourne S_OK.
Notes
Voir IOleObject ::IsUpToDate dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::OnPostVerbDiscardUndo
Appelé par DoVerbDiscardUndo après l’abandon de l’état d’annulation.
HRESULT OnPostVerbDiscardUndo();
Valeur de retour
Retourne S_OK.
Notes
Remplacez cette méthode par du code que vous souhaitez exécuter une fois l’état d’annulation ignoré.
IOleObjectImpl ::OnPostVerbHide
Appelé par DoVerbHide une fois le contrôle masqué.
HRESULT OnPostVerbHide();
Valeur de retour
Retourne S_OK.
Notes
Remplacez cette méthode par du code que vous souhaitez exécuter une fois le contrôle masqué.
IOleObjectImpl ::OnPostVerbInPlaceActivate
Appelé par DoVerbInPlaceActivate après l’activation du contrôle.
HRESULT OnPostVerbInPlaceActivate();
Valeur de retour
Retourne S_OK.
Notes
Remplacez cette méthode par le code que vous souhaitez exécuter une fois le contrôle activé.
IOleObjectImpl ::OnPostVerbOpen
Appelé par DoVerbOpen après l’ouverture du contrôle pour modification dans une fenêtre distincte.
HRESULT OnPostVerbOpen();
Valeur de retour
Retourne S_OK.
Notes
Remplacez cette méthode par du code que vous souhaitez exécuter une fois que le contrôle a été ouvert pour modification dans une fenêtre distincte.
IOleObjectImpl ::OnPostVerbShow
Appelé par DoVerbShow après que le contrôle a été rendu visible.
HRESULT OnPostVerbShow();
Valeur de retour
Retourne S_OK.
Notes
Remplacez cette méthode par du code que vous souhaitez exécuter une fois le contrôle rendu visible.
IOleObjectImpl ::OnPostVerbUIActivate
Appelé par DoVerbUIActivate après l’activation de l’interface utilisateur du contrôle.
HRESULT OnPostVerbUIActivate();
Valeur de retour
Retourne S_OK.
Notes
Remplacez cette méthode par le code que vous souhaitez exécuter après l’activation de l’interface utilisateur du contrôle.
IOleObjectImpl ::OnPreVerbDiscardUndo
Appelé par DoVerbDiscardUndo avant l’abandon de l’état d’annulation.
HRESULT OnPreVerbDiscardUndo();
Valeur de retour
Retourne S_OK.
Notes
Pour empêcher l’abandon de l’état d’annulation, remplacez cette méthode pour retourner une erreur HRESULT.
IOleObjectImpl ::OnPreVerbHide
Appelé par DoVerbHide avant que le contrôle ne soit masqué.
HRESULT OnPreVerbHide();
Valeur de retour
Retourne S_OK.
Notes
Pour empêcher le contrôle d’être masqué, remplacez cette méthode pour retourner une erreur HRESULT.
IOleObjectImpl ::OnPreVerbInPlaceActivate
Appelé par DoVerbInPlaceActivate avant l’activation du contrôle.
HRESULT OnPreVerbInPlaceActivate();
Valeur de retour
Retourne S_OK.
Notes
Pour empêcher l’activation du contrôle en place, remplacez cette méthode pour retourner une erreur HRESULT.
IOleObjectImpl ::OnPreVerbOpen
Appelé par DoVerbOpen avant l’ouverture du contrôle pour modification dans une fenêtre distincte.
HRESULT OnPreVerbOpen();
Valeur de retour
Retourne S_OK.
Notes
Pour empêcher l’ouverture du contrôle pour modification dans une fenêtre distincte, remplacez cette méthode pour retourner une erreur HRESULT.
IOleObjectImpl ::OnPreVerbShow
Appelé par DoVerbShow avant que le contrôle n’ait été rendu visible.
HRESULT OnPreVerbShow();
Valeur de retour
Retourne S_OK.
Notes
Pour empêcher le contrôle d’être rendu visible, remplacez cette méthode pour retourner une erreur HRESULT.
IOleObjectImpl ::OnPreVerbUIActivate
Appelé par DoVerbUIActivate avant l’activation de l’interface utilisateur du contrôle.
HRESULT OnPreVerbUIActivate();
Valeur de retour
Retourne S_OK.
Notes
Pour empêcher l’activation de l’interface utilisateur du contrôle, remplacez cette méthode pour retourner une erreur HRESULT.
IOleObjectImpl ::SetClientSite
Indique au contrôle son site client dans le conteneur.
STDMETHOD(SetClientSite)(IOleClientSite* pClientSite);
Notes
La méthode retourne ensuite S_OK.
Voir IOleObject ::SetClientSite dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::SetColorScheme
Recommande un jeu de couleurs à l’application du contrôle, le cas échéant.
STDMETHOD(SetColorScheme)(LOGPALETTE* /* pLogPal */);
Valeur de retour
Retourne E_NOTIMPL.
Notes
Voir IOleObject ::SetColorScheme dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::SetExtent
Définit l’étendue de la zone d’affichage du contrôle.
STDMETHOD(SetExtent)(
DWORD dwDrawAspect,
SIZEL* psizel);
Notes
Sinon, SetExtent
stocke la valeur pointée par psizel
dans le membre de données de la classe de contrôle CComControlBase ::m_sizeExtent. Cette valeur est en unités HIMETRIC (0,01 millimètre par unité).
Si le membre de données de la classe de contrôle CComControlBase ::m_bResizeNatural a la valeur TRUE, SetExtent
stocke également la valeur vers laquelle pointe psizel
le membre de données de la classe de contrôle CComControlBase ::m_sizeNatural.
Si le membre de données de la classe de contrôle CComControlBase ::m_bRecomposeOnResize a la valeur TRUE, SetExtent
appelle SendOnDataChange
et SendOnViewChange
informe tous les récepteurs consultatifs inscrits auprès du titulaire du conseil que la taille du contrôle a changé.
Voir IOleObject ::SetExtent dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::SetHostNames
Indique au contrôle les noms de l’application conteneur et du document conteneur.
STDMETHOD(SetHostNames)(LPCOLESTR /* szContainerApp */, LPCOLESTR /* szContainerObj */);
Valeur de retour
Retourne S_OK.
Notes
Voir IOleObject ::SetHostNames dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::SetMoniker
Indique au contrôle ce que son moniker est.
STDMETHOD(SetMoniker)(
DWORD /* dwWhichMoniker */,
IMoniker** /* pmk */);
Valeur de retour
Retourne E_NOTIMPL.
Notes
Voir IOleObject ::SetMoniker dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::Unadvise
Supprime la connexion de conseil stockée dans le membre de données de la classe de m_spOleAdviseHolder
contrôle.
STDMETHOD(Unadvise)(DWORD dwConnection);
Notes
Voir IOleObject ::Unadvise dans le Kit de développement logiciel (SDK) Windows.
IOleObjectImpl ::Update
Met à jour le contrôle.
STDMETHOD(Update)(void);
Valeur de retour
Retourne S_OK.
Notes
Voir IOleObject ::Update dans le Kit de développement logiciel (SDK) Windows.
Voir aussi
CComControl, classe
Interfaces de contrôles ActiveX
Vue d’ensemble de la classe