Partager via


IVBGetControl::EnumControls, méthode (vbinterf.h)

Énumère les contrôles dans le formulaire.

Note L’utilisation de cette méthode n’est plus recommandée, car les conteneurs autres que Visual Basic ne la prennent pas en charge.
 

Syntaxe

HRESULT EnumControls(
  [in]  DWORD         dwOleContF,
  [in]  DWORD         dwWhich,
  [out] LPENUMUNKNOWN *ppenumUnk
);

Paramètres

[in] dwOleContF

Spécifie le type d’objets OLE à énumérer. Ce paramètre peut être l’une des valeurs suivantes énumérées par l’énumération OLECONTF .

Valeur Signification
OLECONTF_EMBEDDINGS
Énumère les objets incorporés dans le formulaire. Incluez cet indicateur pour énumérer les contrôles OLE.
OLECONTF_LINKS
Énumère les objets liés dans le formulaire.
OLECONTF_OTHER
Énumère tous les objets pseudo OLE. Incluez cet indicateur pour énumérer les contrôles VBX.
OLECONTF_ONLYUSER
Énumère uniquement les objets dont l’utilisateur a connaissance.
OLECONTF_ONLYIFRUNNING
Énumère uniquement les objets qui s’exécutent sur le formulaire.
 

Lors de l’énumération des contrôles OLE, il est recommandé de combiner les indicateurs OLECONTF_ONLYUSER, OLECONTF_ONLYIFRUNNING et OLECONTF_EMBEDDINGS. Pour inclure les contrôles OLE et VBX, ajoutez l’indicateur OLECONTF_OTHERS à cette liste. Pour énumérer uniquement les contrôles VBX, supprimez l’indicateur OLECONTF_EMBEDDINGS et incluez l’indicateur OLECONTF_OTHERS .

[in] dwWhich

Spécifie l’ensemble de contrôles à énumérer. Ce paramètre peut prendre les valeurs suivantes.

Valeur Signification
GCW_WCH_SIBLING
0x00000001
Énumère tous les frères du contrôle.
GC_WCH_CONTAINER
0x00000002
Énumère tous les objets qui sont parents de votre contrôle. Vous ne pouvez pas utiliser les indicateurs GC_WCH_FONLYAFTER ou GC_WCH_FONLYBEFORE avec cet indicateur.
GC_WCH_CONTAINED
0x00000003
Énumère tous les objets qui sont des enfants de votre contrôle. Vous ne pouvez pas utiliser les indicateurs GC_WCH_FONLYAFTER ou GC_WCH_FONLYBEFORE avec cet indicateur.
GC_WCH_ALL
0x00000004
Énumère tous les objets.
GC_WCH_FREVERSEDIR
0x08000000
Énumère et organise les contrôles dans le sens de l’ordre de tabulation inverse. Cet indicateur peut être combiné à n’importe quel autre indicateur.
GC_WCH_FONLYAFTER
0x10000000
Énumère tous les contrôles qui s’affichent après votre contrôle dans l’ordre de tabulation.
GC_WCH_FONLYBEFORE
0x20000000
Énumère tous les contrôles qui s’affichent avant votre contrôle dans l’ordre de tabulation.
GC_WCH_FSELECTED
0x40000000
Énumère tous les contrôles actuellement sélectionnés.
 

Utilisez l’un des indicateurs GC_WCH_SIBLING, GC_WCH_CONTAINER, GC_WCH_CONTAINED ou GC_WCH_ALL en combinaison avec l’un des indicateurs GC_WCH_Fxxx .

Dans le code VBX, l’indicateur GC_FORM a été passé à VBGetControl pour obtenir un pointeur vers le formulaire. Dans le code de contrôle OLE, il n’existe aucun remplacement direct pour cet indicateur. Au lieu de cela, passez GC_WHC_ALL à EnumControls et utilisez le pointeur vers le premier contrôle de l’énumération. Le premier contrôle de l’énumération est toujours la forme lors de l’utilisation de GC_WHC_ALL.

[out] ppenumUnk

Pointeur vers une énumération d’objets OLE.

Valeur retournée

Cette méthode prend en charge les valeurs de retour standard E_INVALIDARG, E_OUTOFMEMORY et E_UNEXPECTED, ainsi que les éléments suivants :

Remarques

Lors de la migration d’un contrôle VBX vers un contrôle OLE, EnumControls remplace visual Basic VBGetControl, qui n’est plus pris en charge.

Configuration requise

   
Plateforme cible Windows
En-tête vbinterf.h

Voir aussi

IVBGetControl

OLECONTF