Share via


CComControlBase-klasse

Opmerking

De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Deze klasse biedt methoden voor het maken en beheren van ATL-besturingselementen.

Belangrijk

Deze klasse en de bijbehorende leden kunnen niet worden gebruikt in toepassingen die worden uitgevoerd in Windows Runtime.

Syntaxis

class ATL_NO_VTABLE CComControlBase

Leden

Openbare typedefs

Naam Description
CComControlBase::AppearanceType Overschrijven als uw m_nAppearance aandeleneigenschap niet van het type shortis.

Openbare constructors

Naam Description
CComControlBase::CComControlBase De constructor.
CComControlBase::~CComControlBase De destructor.

Openbare methoden

Naam Description
CComControlBase::ControlQueryInterface Hiermee wordt een aanwijzer naar de aangevraagde interface opgehaald.
CComControlBase::D oesVerbActivate Controleert of de iVerb-parameter die wordt gebruikt door IOleObjectImpl::DoVerb het activeren van de gebruikersinterface van het besturingselement (iVerb is gelijk aan OLEIVERB_UIACTIVATE), de actie definieert die wordt uitgevoerd wanneer de gebruiker dubbelklikt op het besturingselement (iVerb is gelijk aan OLEIVERB_PRIMARY), het besturingselement weergeeft (iVerb is gelijk aan OLEIVERB_SHOW) of het besturingselement activeert (iVerb is gelijk aan OLEIVERB_INPLACEACTIVATE).
CComControlBase::D oesVerbUIActivate Controleert of de iVerb-parameter die wordt gebruikt door IOleObjectImpl::DoVerb ervoor zorgt dat de gebruikersinterface van het besturingselement WAAR activeert en retourneert.
CComControlBase::D oVerbProperties Geeft de eigenschappenpagina's van het besturingselement weer.
CComControlBase::FireViewChange Roep deze methode aan om de container te laten weten dat het besturingselement opnieuw moet worden getekend of informeer de geregistreerde sinks dat de weergave van het besturingselement is gewijzigd.
CComControlBase::GetAmbientAppearance Haalt DISPID_AMBIENT_APPEARANCE, de huidige weergave-instelling voor het besturingselement op: 0 voor plat en 1 voor 3D.
CComControlBase::GetAmbientAutoClip Hiermee wordt DISPID_AMBIENT_AUTOCLIP opgehaald, een vlag die aangeeft of de container automatische knipsels van het weergavegebied van het besturingselement ondersteunt.
CComControlBase::GetAmbientBackColor Hiermee haalt u DISPID_AMBIENT_BACKCOLOR, de achtergrondkleur van de omgeving voor alle besturingselementen, gedefinieerd door de container.
CComControlBase::GetAmbientCharSet Hiermee haalt u DISPID_AMBIENT_CHARSET, de omgevingstekenset voor alle besturingselementen, gedefinieerd door de container.
CComControlBase::GetAmbientCodePage Hiermee haalt u DISPID_AMBIENT_CODEPAGE, de omgevingstekenset voor alle besturingselementen, gedefinieerd door de container.
CComControlBase::GetAmbientDisplayAsDefault Haalt DISPID_AMBIENT_DISPLAYASDEFAULT, een vlag die WAAR is als de container het besturingselement op deze site heeft gemarkeerd als een standaardknop, en daarom moet een knop besturingselement zichzelf tekenen met een dikker frame.
CComControlBase::GetAmbientDisplayName Haalt DISPID_AMBIENT_DISPLAYNAME op, de naam die de container aan het besturingselement heeft opgegeven.
CComControlBase::GetAmbientFont Hiermee wordt een aanwijzer opgehaald naar de omgevingsinterface IFont van de container.
CComControlBase::GetAmbientFontDisp Hiermee haalt u een aanwijzer op naar de omgevingszendinterface IFontDisp van de container.
CComControlBase::GetAmbientForeColor Hiermee worden DISPID_AMBIENT_FORECOLOR, de omgevingskleur voor alle besturingselementen, gedefinieerd door de container, opgehaald.
CComControlBase::GetAmbientLocaleID Haalt DISPID_AMBIENT_LOCALEID, de id van de taal die door de container wordt gebruikt.
CComControlBase::GetAmbientMessageReflect Haalt DISPID_AMBIENT_MESSAGEREFLECT, een vlag die aangeeft of de container vensterberichten (zoals WM_DRAWITEM) als gebeurtenissen wil ontvangen.
CComControlBase::GetAmbientPalette Hiermee wordt DISPID_AMBIENT_PALETTE opgehaald, die wordt gebruikt voor toegang tot de HPALETTE van de container.
CComControlBase::GetAmbientProperty Haalt de containereigenschap op die is opgegeven door de id.
CComControlBase::GetAmbientRightToLeft Hiermee haalt u DISPID_AMBIENT_RIGHTTOLEFT, de richting waarin de inhoud wordt weergegeven door de container.
CComControlBase::GetAmbientScaleUnits Haalt DISPID_AMBIENT_SCALEUNITS, de omgevingseenheden van de container (zoals inches of centimeters) voor het labelen weer.
CComControlBase::GetAmbientShowGrabHandles Haalt DISPID_AMBIENT_SHOWGRABHANDLES, een vlag die aangeeft of de container toestaat dat het besturingselement handgrepen voor zichzelf weergeeft wanneer deze actief is.
CComControlBase::GetAmbientShowHatching Haalt DISPID_AMBIENT_SHOWHATCHING, een vlag die aangeeft of de container het besturingselement toestaat zichzelf weer te geven met een uitgebroed patroon wanneer de gebruikersinterface actief is.
CComControlBase::GetAmbientSupportsMnemonics Haalt DISPID_AMBIENT_SUPPORTSMNEMONICS, een vlag die aangeeft of de container toetsenbordmnemonics ondersteunt.
CComControlBase::GetAmbientTextAlign Hiermee haalt u DISPID_AMBIENT_TEXTALIGN, de voorkeur voor tekstuitlijning door de container: 0 voor algemene uitlijning (getallen rechts, tekst links), 1 voor linkeruitlijning, 2 voor centreren en 3 voor de juiste uitlijning.
CComControlBase::GetAmbientTopToBottom Hiermee haalt u DISPID_AMBIENT_TOPTOBOTTOM, de richting waarin de inhoud wordt weergegeven door de container.
CComControlBase::GetAmbientUIDead Hiermee wordt DISPID_AMBIENT_UIDEAD opgehaald, een vlag die aangeeft of de container het besturingselement wil reageren op acties van de gebruikersinterface.
CComControlBase::GetAmbientUserMode Haalt DISPID_AMBIENT_USERMODE, een vlag die aangeeft of de container zich in de uitvoeringsmodus (TRUE) of in de ontwerpmodus (FALSE) bevindt.
CComControlBase::GetDirty Retourneert de waarde van het gegevenslid m_bRequiresSave.
CComControlBase::GetZoomInfo Haalt de x- en y-waarden van de teller en noemer van de zoomfactor op voor een besturingselement dat is geactiveerd voor in-place bewerking.
CComControlBase::InPlaceActivate Zorgt ervoor dat het besturingselement wordt overgestapt van de inactieve status naar de toestand die het werkwoord in iVerb aangeeft.
CComControlBase::InternalGetSite Roep deze methode aan om een query uit te voeren op de besturingssite voor een aanwijzer naar de geïdentificeerde interface.
CComControlBase::OnDraw Overschrijf deze methode om uw besturingselement te tekenen.
CComControlBase::OnDrawAdvanced De standaardinstelling OnDrawAdvanced bereidt een genormaliseerde apparaatcontext voor op tekenen en roept vervolgens de methode van OnDraw uw besturingsklasse aan.
CComControlBase::OnKillFocus Controleert of het besturingselement actief is en een geldige besturingssite heeft en informeert vervolgens de container dat het besturingselement de focus heeft verloren.
CComControlBase::OnMouseActivate Controleert of de gebruikersinterface zich in de gebruikersmodus bevindt en activeert vervolgens het besturingselement.
CComControlBase::OnPaint Bereidt de container voor op schilderen, haalt het clientgebied van het besturingselement op en roept vervolgens de methode van OnDraw de besturingsklasse aan.
CComControlBase::OnSetFocus Controleert of het besturingselement actief is en heeft een geldige besturingssite en informeert vervolgens de container waarop het besturingselement de focus heeft gekregen.
CComControlBase::P reTranslateAccelerator Overschrijf deze methode om uw eigen handlers voor toetsenbordversnellers te bieden.
CComControlBase::SendOnClose Informeert alle adviessinkten die bij de adviserende houder zijn geregistreerd dat de controle is gesloten.
CComControlBase::SendOnDataChange Informeert alle adviessinks die bij de adviserende houder zijn geregistreerd dat de controlegegevens zijn gewijzigd.
CComControlBase::SendOnRename Informeert alle adviessinkten geregistreerd bij de adviserende houder dat de controle een nieuwe moniker heeft.
CComControlBase::SendOnSave Informeert alle adviessinkten die bij de adviserende houder zijn geregistreerd dat de controle is opgeslagen.
CComControlBase::SendOnViewChange Hiermee worden alle geregistreerde adviessinks gemeld dat de weergave van het besturingselement is gewijzigd.
CComControlBase::SetControlFocus Hiermee stelt u de focus van het toetsenbord naar of van het besturingselement in of verwijdert u deze.
CComControlBase::SetDirty Hiermee stelt u het gegevenslid m_bRequiresSave in op de waarde in bDirty.

Publieke dataleden

Naam Description
CComControlBase::m_bAutoSize Vlag die aangeeft dat het besturingselement geen andere grootte kan hebben.
CComControlBase::m_bDrawFromNatural Vlag die aangeeft dat IDataObjectImpl::GetData en CComControlBase::GetZoomInfo moet de grootte van het besturingselement instellen van m_sizeNatural in plaats van van .m_sizeExtent
CComControlBase::m_bDrawGetDataInHimetric Vlag die aangeeft dat IDataObjectImpl::GetData HIMETRIC-eenheden moeten worden gebruikt en geen pixels bij het tekenen.
CComControlBase::m_bInPlaceActive Vlag die aangeeft dat het besturingselement actief is.
CComControlBase::m_bInPlaceSiteEx Vlag die aangeeft dat de container ondersteuning biedt voor de IOleInPlaceSiteEx interface- en OCX96-besturingselementen, zoals vensterloze en flikkervrije besturingselementen.
CComControlBase::m_bNegotiatedWnd Vlag die aangeeft of het besturingselement met de container heeft onderhandeld over ondersteuning voor de besturingsfuncties van OCX96 (zoals flikkerloze en vensterloze besturingselementen) en of het besturingselement vensterloos of vensterloos is.
CComControlBase::m_bRecomposeOnResize Vlag die aangeeft dat het besturingselement de presentatie opnieuw wil compileren wanneer de container de weergavegrootte van het besturingselement wijzigt.
CComControlBase::m_bRequiresSave Vlag die aangeeft dat het besturingselement is gewijzigd sinds het laatst is opgeslagen.
CComControlBase::m_bResizeNatural Vlag die aangeeft dat het besturingselement de grootte van de natuurlijke omvang (de niet-geschaalde fysieke grootte) wil wijzigen wanneer de container de weergavegrootte van het besturingselement wijzigt.
CComControlBase::m_bUIActive Vlag die aangeeft dat de gebruikersinterface van het besturingselement, zoals menu's en werkbalken, actief is.
CComControlBase::m_bUsingWindowRgn Vlag die aangeeft dat het besturingselement gebruikmaakt van de door de container geleverde vensterregio.
CComControlBase::m_bWasOnceWindowless Vlag die aangeeft dat het besturingselement vensterloos is, maar nu wel of niet vensterloos is.
CComControlBase::m_bWindowOnly Vlag die aangeeft dat het besturingselement moet worden gevensterd, zelfs als de container vensterloze besturingselementen ondersteunt.
CComControlBase::m_bWndLess Vlag die aangeeft dat het besturingselement vensterloos is.
CComControlBase::m_hWndCD Bevat een verwijzing naar de venstergreep die aan het besturingselement is gekoppeld.
CComControlBase::m_nFreezeEvents Een telling van het aantal keren dat de container geblokkeerde gebeurtenissen heeft (geweigerd gebeurtenissen te accepteren) zonder tussenliggende ontdooiing van gebeurtenissen (acceptatie van gebeurtenissen).
CComControlBase::m_rcPos De positie in pixels van het besturingselement, uitgedrukt in de coördinaten van de container.
CComControlBase::m_sizeExtent De omvang van het besturingselement in HIMETRIC-eenheden (elke eenheid is 0,01 millimeter) voor een bepaald beeldscherm.
CComControlBase::m_sizeNatural De fysieke grootte van het besturingselement in HIMETRIC-eenheden (elke eenheid is 0,01 millimeter).
CComControlBase::m_spAdviseSink Een directe aanwijzer naar de adviesverbinding op de container (de IAdviseSink van de container).
CComControlBase::m_spAmbientDispatch Een CComDispatchDriver object waarmee u de eigenschappen van de container kunt ophalen en instellen via een IDispatch aanwijzer.
CComControlBase::m_spClientSite Een aanwijzer naar de clientsite van het besturingselement binnen de container.
CComControlBase::m_spDataAdviseHolder Biedt een standaardmethode voor het bewaren van adviesverbindingen tussen gegevensobjecten en het adviseren van sinks.
CComControlBase::m_spInPlaceSite Een aanwijzer naar de interfacepointer IOleInPlaceSite, IOleInPlaceSiteEx of IOleInPlaceSiteWindowless .
CComControlBase::m_spOleAdviseHolder Biedt een standaard implementatie van een manier om adviesverbindingen vast te houden.

Opmerkingen

Deze klasse biedt methoden voor het maken en beheren van ATL-besturingselementen. CComControl-klasse is afgeleid van CComControlBase. Wanneer u een standaard besturingselement of DHTML-besturingselement maakt met behulp van de wizard ATL-beheer, wordt uw klasse automatisch afgeleid van CComControlBase.

Zie de ATL-zelfstudie voor meer informatie over het maken van een besturingselement. Zie het artikel Een ATL-project maken voor meer informatie over de wizard ATL-project.

Requirements

Koptekst: atlctl.h

CComControlBase::AppearanceType

Overschrijven als uw m_nAppearance aandeleneigenschap niet van het type shortis.

typedef short AppearanceType;

Opmerkingen

De wizard ATL-beheer voegt m_nAppearance voorraadeigenschap van het type kort toe. Overschrijven AppearanceType als u een ander gegevenstype gebruikt.

CComControlBase::CComControlBase

De constructor.

CComControlBase(HWND& h);

Parameterwaarden

h
De greep naar het venster dat aan het besturingselement is gekoppeld.

Opmerkingen

Initialiseert de grootte van het besturingselement tot 5080X5080 HIMETRIC-eenheden (2"X2") en initialiseert de waarden van het CComControlBase gegevenslid in NULL of FALSE.

CComControlBase::~CComControlBase

De destructor.

~CComControlBase();

Opmerkingen

Als het besturingselement is gevensterd, ~CComControlBase vernietigt u het door DestroyWindow aan te roepen.

CComControlBase::ControlQueryInterface

Hiermee wordt een aanwijzer naar de aangevraagde interface opgehaald.

virtual HRESULT ControlQueryInterface(const IID& iid,
    void** ppv);

Parameterwaarden

iid
De GUID van de interface die wordt aangevraagd.

Ppv
Een aanwijzer naar de interfacepointer die is geïdentificeerd door iid of NULL als de interface niet wordt gevonden.

Opmerkingen

Verwerkt alleen interfaces in de COM-kaarttabel.

Example

// Retrieve the control's IOleObject interface. Note interface 
// is automatically released when pOleObject goes out of scope

CComPtr<IOleObject> pOleObject;
ControlQueryInterface(IID_IOleObject, (void**)&pOleObject);

CComControlBase::D oesVerbActivate

Controleert of de iVerb-parameter die wordt gebruikt door IOleObjectImpl::DoVerb het activeren van de gebruikersinterface van het besturingselement (iVerb is gelijk aan OLEIVERB_UIACTIVATE), de actie definieert die wordt uitgevoerd wanneer de gebruiker dubbelklikt op het besturingselement (iVerb is gelijk aan OLEIVERB_PRIMARY), het besturingselement weergeeft (iVerb is gelijk aan OLEIVERB_SHOW) of het besturingselement activeert (iVerb is gelijk aan OLEIVERB_INPLACEACTIVATE).

BOOL DoesVerbActivate(LONG iVerb);

Parameterwaarden

iVerb
Waarde die de actie aangeeft die moet worden uitgevoerd door DoVerb.

Retourwaarde

Retourneert TRUE als iVerb gelijk is aan OLEIVERB_UIACTIVATE, OLEIVERB_PRIMARY, OLEIVERB_SHOW of OLEIVERB_INPLACEACTIVATE; retourneert anders ONWAAR.

Opmerkingen

U kunt deze methode overschrijven om uw eigen activeringswerkwoord te definiëren.

CComControlBase::D oesVerbUIActivate

Controleert of de iVerb-parameter die wordt gebruikt door IOleObjectImpl::DoVerb ervoor zorgt dat de gebruikersinterface van het besturingselement WAAR activeert en retourneert.

BOOL DoesVerbUIActivate(LONG iVerb);

Parameterwaarden

iVerb
Waarde die de actie aangeeft die moet worden uitgevoerd door DoVerb.

Retourwaarde

Retourneert TRUE als iVerb gelijk is aan OLEIVERB_UIACTIVATE, OLEIVERB_PRIMARY, OLEIVERB_SHOW of OLEIVERB_INPLACEACTIVATE. Anders retourneert de methode FALSE.

CComControlBase::D oVerbProperties

Geeft de eigenschappenpagina's van het besturingselement weer.

HRESULT DoVerbProperties(LPCRECT /* prcPosRect */, HWND hwndParent);

Parameterwaarden

prcPosRec
Gereserveerd.

hwndParent
Greep van het venster met het besturingselement.

Retourwaarde

Een van de standaard HRESULT-waarden.

Example

// The following implementation of the WM_RBUTTONDOWN message handler
// will pop up the ActiveX Control's PropertyPages 
LRESULT CMyComposite::OnRButtonDown(UINT /*uMsg*/, WPARAM /*wParam*/, 
   LPARAM /*lParam*/, BOOL& /*bHandled*/)
{
   DoVerbProperties(NULL, ::GetActiveWindow());
   return 0L;
}

 

MESSAGE_HANDLER(WM_RBUTTONDOWN, OnRButtonDown)

CComControlBase::FireViewChange

Roep deze methode aan om de container te laten weten dat het besturingselement opnieuw moet worden getekend of informeer de geregistreerde sinks dat de weergave van het besturingselement is gewijzigd.

HRESULT FireViewChange();

Retourwaarde

Een van de standaard HRESULT-waarden.

Opmerkingen

Als het besturingselement actief is (het lid CComControlBase::m_bInPlaceActive is TRUE), wordt de container die u opnieuw wilt tekenen, op de hoogte stellen van de container die u opnieuw wilt tekenen. Als het besturingselement inactief is, informeert u de geregistreerde sinks van het besturingselement (via het lid CComControlBase::m_spAdviseSink) dat de weergave van het besturingselement is gewijzigd.

Example

STDMETHODIMP CMyControl::put_Shape(int newVal)
{
   // store newVal in m_nShape user-defined member
   m_nShape = newVal;

   // notify container to redraw control
   FireViewChange();
   return S_OK;
}

CComControlBase::GetAmbientAppearance

Haalt DISPID_AMBIENT_APPEARANCE, de huidige weergave-instelling voor het besturingselement op: 0 voor plat en 1 voor 3D.

HRESULT GetAmbientAppearance(short& nAppearance);

Parameterwaarden

nAppearance
De eigenschap DISPID_AMBIENT_APPEARANCE.

Retourwaarde

Een van de standaard HRESULT-waarden.

Example

HRESULT OnDraw(ATL_DRAWINFO& di)
{
   short nAppearance;
   RECT& rc = *(RECT*)di.prcBounds;

   // draw 3D border if AmbientAppearance is not supported or is set to 1 
   HRESULT hr = GetAmbientAppearance(nAppearance);
   if (hr != S_OK || nAppearance==1)
   {
      DrawEdge(di.hdcDraw, &rc, EDGE_SUNKEN, BF_RECT);
   }
   else
   {
      Rectangle(di.hdcDraw, rc.left, rc.top, rc.right, rc.bottom);
   }

   SetTextAlign(di.hdcDraw, TA_CENTER|TA_BASELINE);
   LPCTSTR pszText = _T("ATL 8.0 : MyControl");

   // For security reasons, we recommend that you use the lstrlen function
   // with caution. Here, we can guarantee that pszText is NULL terminated,
   // and therefore it is safe to use this function.
   TextOut(di.hdcDraw, 
      (rc.left + rc.right) / 2, 
      (rc.top + rc.bottom) / 2, 
      pszText, 
      lstrlen(pszText));

   return S_OK;
}

CComControlBase::GetAmbientAutoClip

Hiermee wordt DISPID_AMBIENT_AUTOCLIP opgehaald, een vlag die aangeeft of de container automatische knipsels van het weergavegebied van het besturingselement ondersteunt.

HRESULT GetAmbientAutoClip(BOOL& bAutoClip);

Parameterwaarden

bAutoClip
De eigenschap DISPID_AMBIENT_AUTOCLIP.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientBackColor

Hiermee haalt u DISPID_AMBIENT_BACKCOLOR, de achtergrondkleur van de omgeving voor alle besturingselementen, gedefinieerd door de container.

HRESULT GetAmbientBackColor(OLE_COLOR& BackColor);

Parameterwaarden

Backcolor
De eigenschap DISPID_AMBIENT_BACKCOLOR.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientCharSet

Hiermee haalt u DISPID_AMBIENT_CHARSET, de omgevingstekenset voor alle besturingselementen, gedefinieerd door de container.

HRESULT GetAmbientCharSet(BSTR& bstrCharSet);

Parameterwaarden

bstrCharSet
De eigenschap DISPID_AMBIENT_CHARSET.

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

CComControlBase::GetAmbientCodePage

Haalt DISPID_AMBIENT_CODEPAGE, de pagina met omgevingscode voor alle besturingselementen, die door de container zijn gedefinieerd, op.

HRESULT GetAmbientCodePage(ULONG& ulCodePage);

Parameterwaarden

ulCodePage
De eigenschap DISPID_AMBIENT_CODEPAGE.

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

CComControlBase::GetAmbientDisplayAsDefault

Haalt DISPID_AMBIENT_DISPLAYASDEFAULT, een vlag die WAAR is als de container het besturingselement op deze site heeft gemarkeerd als een standaardknop, en daarom moet een knop besturingselement zichzelf tekenen met een dikker frame.

HRESULT GetAmbientDisplayAsDefault(BOOL& bDisplayAsDefault);

Parameterwaarden

bDisplayAsDefault
De eigenschap DISPID_AMBIENT_DISPLAYASDEFAULT.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientDisplayName

Haalt DISPID_AMBIENT_DISPLAYNAME op, de naam die de container aan het besturingselement heeft opgegeven.

HRESULT GetAmbientDisplayName(BSTR& bstrDisplayName);

Parameterwaarden

bstrDisplayName
De eigenschap DISPID_AMBIENT_DISPLAYNAME.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientFont

Hiermee wordt een aanwijzer opgehaald naar de omgevingsinterface IFont van de container.

HRESULT GetAmbientFont(IFont** ppFont);

Parameterwaarden

ppFont
Een aanwijzer naar de omgevings-IFont-interface van de container.

Retourwaarde

Een van de standaard HRESULT-waarden.

Opmerkingen

Als de eigenschap NULL is, is de aanwijzer NULL. Als de aanwijzer niet NULL is, moet de aanroeper de aanwijzer vrijgeven.

CComControlBase::GetAmbientFontDisp

Hiermee haalt u een aanwijzer op naar de omgevingszendinterface IFontDisp van de container.

HRESULT GetAmbientFontDisp(IFontDisp** ppFont);

Parameterwaarden

ppFont
Een aanwijzer naar de omgevingsinterface IFontDisp van de container.

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

Opmerkingen

Als de eigenschap NULL is, is de aanwijzer NULL. Als de aanwijzer niet NULL is, moet de aanroeper de aanwijzer vrijgeven.

CComControlBase::GetAmbientForeColor

Hiermee worden DISPID_AMBIENT_FORECOLOR, de omgevingskleur voor alle besturingselementen, gedefinieerd door de container, opgehaald.

HRESULT GetAmbientForeColor(OLE_COLOR& ForeColor);

Parameterwaarden

Forecolor
De eigenschap DISPID_AMBIENT_FORECOLOR.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientLocaleID

Haalt DISPID_AMBIENT_LOCALEID, de id van de taal die door de container wordt gebruikt.

HRESULT GetAmbientLocaleID(LCID& lcid);

Parameterwaarden

lcid-
De eigenschap DISPID_AMBIENT_LOCALEID.

Retourwaarde

Een van de standaard HRESULT-waarden.

Opmerkingen

Het besturingselement kan deze id gebruiken om de gebruikersinterface aan te passen aan verschillende talen.

CComControlBase::GetAmbientMessageReflect

Haalt DISPID_AMBIENT_MESSAGEREFLECT, een vlag die aangeeft of de container vensterberichten (zoals WM_DRAWITEM) als gebeurtenissen wil ontvangen.

HRESULT GetAmbientMessageReflect(BOOL& bMessageReflect);

Parameterwaarden

bMessageReflect
De eigenschap DISPID_AMBIENT_MESSAGEREFLECT.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientPalette

Hiermee wordt DISPID_AMBIENT_PALETTE opgehaald, die wordt gebruikt voor toegang tot de HPALETTE van de container.

HRESULT GetAmbientPalette(HPALETTE& hPalette);

Parameterwaarden

hPalette
De eigenschap DISPID_AMBIENT_PALETTE.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientProperty

Haalt de containereigenschap op die is opgegeven door dispid.

HRESULT GetAmbientProperty(DISPID dispid, VARIANT& var);

Parameterwaarden

dispid
Id van de containereigenschap die moet worden opgehaald.

var
Variabele voor het ontvangen van de eigenschap.

Retourwaarde

Een van de standaard HRESULT-waarden.

Opmerkingen

ATL heeft een set helperfuncties geleverd om specifieke eigenschappen op te halen, bijvoorbeeld CComControlBase::GetAmbientBackColor. Als er geen geschikte methode beschikbaar is, gebruikt u GetAmbientProperty.

CComControlBase::GetAmbientRightToLeft

Hiermee haalt u DISPID_AMBIENT_RIGHTTOLEFT, de richting waarin de inhoud wordt weergegeven door de container.

HRESULT GetAmbientRightToLeft(BOOL& bRightToLeft);

Parameterwaarden

bRightToLeft
De eigenschap DISPID_AMBIENT_RIGHTTOLEFT. Ingesteld op TRUE als inhoud van rechts naar links wordt weergegeven, ONWAAR als deze van links naar rechts wordt weergegeven.

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

CComControlBase::GetAmbientScaleUnits

Haalt DISPID_AMBIENT_SCALEUNITS, de omgevingseenheden van de container (zoals inches of centimeters) voor het labelen weer.

HRESULT GetAmbientScaleUnits(BSTR& bstrScaleUnits);

Parameterwaarden

bstrScaleUnits
De eigenschap DISPID_AMBIENT_SCALEUNITS.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientShowGrabHandles

Haalt DISPID_AMBIENT_SHOWGRABHANDLES, een vlag die aangeeft of de container toestaat dat het besturingselement handgrepen voor zichzelf weergeeft wanneer deze actief is.

HRESULT GetAmbientShowGrabHandles(BOOL& bShowGrabHandles);

Parameterwaarden

bShowGrabHandles
De eigenschap DISPID_AMBIENT_SHOWGRABHANDLES.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientShowHatching

Haalt DISPID_AMBIENT_SHOWHATCHING, een vlag die aangeeft of de container het besturingselement toestaat zichzelf weer te geven met een uitgebroed patroon wanneer de gebruikersinterface van het besturingselement actief is.

HRESULT GetAmbientShowHatching(BOOL& bShowHatching);

Parameterwaarden

bShowHatching
De eigenschap DISPID_AMBIENT_SHOWHATCHING.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientSupportsMnemonics

Haalt DISPID_AMBIENT_SUPPORTSMNEMONICS, een vlag die aangeeft of de container toetsenbordmnemonics ondersteunt.

HRESULT GetAmbientSupportsMnemonics(BOOL& bSupportsMnemonics);

Parameterwaarden

bSupportsMnemonics
De eigenschap DISPID_AMBIENT_SUPPORTSMNEMONICS.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientTextAlign

Hiermee haalt u DISPID_AMBIENT_TEXTALIGN, de voorkeur voor tekstuitlijning door de container: 0 voor algemene uitlijning (getallen rechts, tekst links), 1 voor linkeruitlijning, 2 voor centreren en 3 voor de juiste uitlijning.

HRESULT GetAmbientTextAlign(short& nTextAlign);

Parameterwaarden

nTextAlign
De eigenschap DISPID_AMBIENT_TEXTALIGN.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetAmbientTopToBottom

Hiermee haalt u DISPID_AMBIENT_TOPTOBOTTOM, de richting waarin de inhoud wordt weergegeven door de container.

HRESULT GetAmbientTopToBottom(BOOL& bTopToBottom);

Parameterwaarden

bTopToBottom
De eigenschap DISPID_AMBIENT_TOPTOBOTTOM. Ingesteld op TRUE als tekst boven naar beneden wordt weergegeven, ONWAAR als deze onder naar boven wordt weergegeven.

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

CComControlBase::GetAmbientUIDead

Hiermee wordt DISPID_AMBIENT_UIDEAD opgehaald, een vlag die aangeeft of de container het besturingselement wil reageren op acties van de gebruikersinterface.

HRESULT GetAmbientUIDead(BOOL& bUIDead);

Parameterwaarden

bUIDead
De eigenschap DISPID_AMBIENT_UIDEAD.

Retourwaarde

Een van de standaard HRESULT-waarden.

Opmerkingen

Als WAAR is, moet het besturingselement niet reageren. Deze vlag is van toepassing, ongeacht de vlag DISPID_AMBIENT_USERMODE. Zie CComControlBase::GetAmbientUserMode.

CComControlBase::GetAmbientUserMode

Haalt DISPID_AMBIENT_USERMODE, een vlag die aangeeft of de container zich in de uitvoeringsmodus (TRUE) of in de ontwerpmodus (FALSE) bevindt.

HRESULT GetAmbientUserMode(BOOL& bUserMode);

Parameterwaarden

bUserMode
De eigenschap DISPID_AMBIENT_USERMODE.

Retourwaarde

Een van de standaard HRESULT-waarden.

CComControlBase::GetDirty

Retourneert de waarde van het gegevenslid m_bRequiresSave.

BOOL GetDirty();

Retourwaarde

Retourneert de waarde van het gegevenslid m_bRequiresSave.

Opmerkingen

Deze waarde wordt ingesteld met CComControlBase::SetDirty.

CComControlBase::GetZoomInfo

Haalt de x- en y-waarden van de teller en noemer van de zoomfactor op voor een besturingselement dat is geactiveerd voor in-place bewerking.

void GetZoomInfo(ATL_DRAWINFO& di);

Parameterwaarden

Di
De structuur die de teller en noemer van de zoomfactor vasthoudt. Zie ATL_DRAWINFO voor meer informatie.

Opmerkingen

De zoomfactor is het aandeel van de natuurlijke grootte van het besturingselement in de huidige mate.

CComControlBase::InPlaceActivate

Zorgt ervoor dat het besturingselement wordt overgestapt van de inactieve status naar de toestand die het werkwoord in iVerb aangeeft.

HRESULT InPlaceActivate(LONG iVerb, const RECT* prcPosRect = NULL);

Parameterwaarden

iVerb
Waarde die aangeeft welke actie moet worden uitgevoerd door IOleObjectImpl::D oVerb.

prcPosRect
Aanwijzer naar de positie van het in-place besturingselement.

Retourwaarde

Een van de standaard HRESULT-waarden.

Opmerkingen

Vóór de activering controleert deze methode of het besturingselement een clientsite heeft, controleert hoeveel van het besturingselement zichtbaar is en wordt de locatie van het besturingselement in het bovenliggende venster ophaalt. Nadat het besturingselement is geactiveerd, activeert deze methode de gebruikersinterface van het besturingselement en geeft de container aan dat het besturingselement zichtbaar moet worden.

Met deze methode wordt ook een IOleInPlaceSite, IOleInPlaceSiteExof IOleInPlaceSiteWindowless interfaceaanwijzer voor het besturingselement opgehaald en opgeslagen in het gegevenslid CComControlBase van de besturingsklasse::m_spInPlaceSite. De leden van de controleklassegegevens CComControlBase::m_bInPlaceSiteEx, CComControlBase::m_bWndLess, CComControlBase::m_bWasOnceWindowless en CComControlBase::m_bNegotiatedWnd zijn ingesteld op waar.

CComControlBase::InternalGetSite

Roep deze methode aan om een query uit te voeren op de besturingssite voor een aanwijzer naar de geïdentificeerde interface.

HRESULT InternalGetSite(REFIID riid, void** ppUnkSite);

Parameterwaarden

riid
De IID van de interfacepointer die moet worden geretourneerd in ppUnkSite.

ppUnkSite
Adres van de aanwijzervariabele die de interfacepointer ontvangt die is aangevraagd in riid.

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

Opmerkingen

Als de site de interface ondersteunt die is aangevraagd in riid, wordt de aanwijzer geretourneerd door middel van ppUnkSite. Anders is ppUnkSite ingesteld op NULL.

CComControlBase::m_bAutoSize

Vlag die aangeeft dat het besturingselement geen andere grootte kan hebben.

unsigned m_bAutoSize:1;

Opmerkingen

Deze vlag wordt gecontroleerd door IOleObjectImpl::SetExtent en, indien WAAR, zorgt ervoor dat de functie E_FAIL retourneert.

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

Als u de optie Automatische grootte toevoegt op het tabblad Eigenschappen van aandelen van de wizard ATL-besturingselement, wordt dit gegevenslid automatisch gemaakt in uw besturingselementklasse, worden er put- en get-methoden voor de eigenschap gemaakt en wordt IPropertyNotifySink ondersteund om de container automatisch op de hoogte te stellen wanneer de eigenschap wordt gewijzigd.

CComControlBase::m_bDrawFromNatural

Vlag die aangeeft dat IDataObjectImpl::GetData en CComControlBase::GetZoomInfo moet de grootte van het besturingselement instellen van m_sizeNatural in plaats van van .m_sizeExtent

unsigned m_bDrawFromNatural:1;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bDrawGetDataInHimetric

Vlag die aangeeft dat IDataObjectImpl::GetData HIMETRIC-eenheden moeten worden gebruikt en geen pixels bij het tekenen.

unsigned m_bDrawGetDataInHimetric:1;

Opmerkingen

Elke logische HIMETRIC-eenheid is 0,01 millimeter.

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bInPlaceActive

Vlag die aangeeft dat het besturingselement actief is.

unsigned m_bInPlaceActive:1;

Opmerkingen

Dit betekent dat het besturingselement zichtbaar is en het bijbehorende venster, indien aanwezig, zichtbaar is, maar dat de menu's en werkbalken mogelijk niet actief zijn. De m_bUIActive vlag geeft aan dat de gebruikersinterface van het besturingselement, zoals menu's, ook actief is.

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bInPlaceSiteEx

Vlag die aangeeft dat de container ondersteuning biedt voor de IOleInPlaceSiteEx interface- en OCX96-besturingselementen, zoals vensterloze en flikkervrije besturingselementen.

unsigned m_bInPlaceSiteEx:1;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

Het gegevenslid m_spInPlaceSite verwijst naar een interface IOleInPlaceSite, IOleInPlaceSiteEx of IOleInPlaceSiteWindowless , afhankelijk van de waarde van de m_bWndLess en m_bInPlaceSiteEx vlaggen. (Het gegevenslid m_bNegotiatedWnd moet WAAR zijn als de m_spInPlaceSite aanwijzer geldig is.)

Als m_bWndLess ONWAAR is en m_bInPlaceSiteEx WAAR is, m_spInPlaceSite is dit een IOleInPlaceSiteEx interfaceaanwijzer. Zie m_spInPlaceSite voor een tabel met de relatie tussen deze drie gegevensleden.

CComControlBase::m_bNegotiatedWnd

Vlag die aangeeft of het besturingselement met de container heeft onderhandeld over ondersteuning voor de besturingsfuncties van OCX96 (zoals flikkerloze en vensterloze besturingselementen) en of het besturingselement vensterloos of vensterloos is.

unsigned m_bNegotiatedWnd:1;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

De m_bNegotiatedWnd vlag moet WAAR zijn om de m_spInPlaceSite aanwijzer geldig te kunnen maken.

CComControlBase::m_bRecomposeOnResize

Vlag die aangeeft dat het besturingselement de presentatie opnieuw wil compileren wanneer de container de weergavegrootte van het besturingselement wijzigt.

unsigned m_bRecomposeOnResize:1;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

Deze vlag wordt gecontroleerd door IOleObjectImpl::SetExtent en, als WAAR, SetExtent wordt de container met weergavewijzigingen op de hoogte gesteld. als deze vlag is ingesteld, moet ook de OLEMISC_RECOMPOSEONRESIZE bit in de OLEMISC-opsomming worden ingesteld.

CComControlBase::m_bRequiresSave

Vlag die aangeeft dat het besturingselement is gewijzigd sinds het laatst is opgeslagen.

unsigned m_bRequiresSave:1;

Opmerkingen

De waarde van m_bRequiresSave kan worden ingesteld met CComControlBase::SetDirty en opgehaald met CComControlBase::GetDirty.

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bResizeNatural

Vlag die aangeeft dat het besturingselement de grootte van de natuurlijke omvang (de niet-geschaalde fysieke grootte) wil wijzigen wanneer de container de weergavegrootte van het besturingselement wijzigt.

unsigned m_bResizeNatural:1;

Opmerkingen

Deze vlag wordt gecontroleerd door IOleObjectImpl::SetExtent en, indien WAAR, wordt de doorgegeven SetExtent grootte toegewezen aan m_sizeNatural.

De doorgegeven SetExtent grootte wordt altijd toegewezen aan m_sizeExtent, ongeacht de waarde van m_bResizeNatural.

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bUIActive

Vlag die aangeeft dat de gebruikersinterface van het besturingselement, zoals menu's en werkbalken, actief is.

unsigned m_bUIActive:1;

Opmerkingen

De m_bInPlaceActive vlag geeft aan dat het besturingselement actief is, maar niet dat de gebruikersinterface actief is.

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bUsingWindowRgn

Vlag die aangeeft dat het besturingselement gebruikmaakt van de door de container geleverde vensterregio.

unsigned m_bUsingWindowRgn:1;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bWasOnceWindowless

Vlag die aangeeft dat het besturingselement vensterloos is, maar nu wel of niet vensterloos is.

unsigned m_bWasOnceWindowless:1;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bWindowOnly

Vlag die aangeeft dat het besturingselement moet worden gevensterd, zelfs als de container vensterloze besturingselementen ondersteunt.

unsigned m_bWindowOnly:1;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_bWndLess

Vlag die aangeeft dat het besturingselement vensterloos is.

unsigned m_bWndLess:1;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

Het gegevenslid m_spInPlaceSite verwijst naar een interface IOleInPlaceSite, IOleInPlaceSiteEx of IOleInPlaceSiteWindowless , afhankelijk van de waarde van de m_bWndLess vlaggen en CComControlBase::m_bInPlaceSiteEx . (Het gegevenslid CComControlBase::m_bNegotiatedWnd moet WAAR zijn voor de CComControlBase::m_spInPlaceSite aanwijzer om geldig te zijn.)

Als m_bWndLess waar is, m_spInPlaceSite is dit een IOleInPlaceSiteWindowless interfaceaanwijzer. Zie CComControlBase::m_spInPlaceSite voor een tabel met de volledige relatie tussen deze gegevensleden.

CComControlBase::m_hWndCD

Bevat een verwijzing naar de venstergreep die aan het besturingselement is gekoppeld.

HWND& m_hWndCD;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_nFreezeEvents

Een telling van het aantal keren dat de container geblokkeerde gebeurtenissen heeft (geweigerd gebeurtenissen te accepteren) zonder tussenliggende ontdooiing van gebeurtenissen (acceptatie van gebeurtenissen).

short m_nFreezeEvents;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_rcPos

De positie in pixels van het besturingselement, uitgedrukt in de coördinaten van de container.

RECT m_rcPos;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_sizeExtent

De omvang van het besturingselement in HIMETRIC-eenheden (elke eenheid is 0,01 millimeter) voor een bepaald beeldscherm.

SIZE m_sizeExtent;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

Deze grootte wordt geschaald op basis van het scherm. De fysieke grootte van het besturingselement wordt opgegeven in het m_sizeNatural gegevenslid en is vast.

U kunt de grootte converteren naar pixels met de globale functie AtlHiMetricTo Pixel.

CComControlBase::m_sizeNatural

De fysieke grootte van het besturingselement in HIMETRIC-eenheden (elke eenheid is 0,01 millimeter).

SIZE m_sizeNatural;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

Deze grootte is vast, terwijl de grootte m_sizeExtent wordt geschaald door de weergave.

U kunt de grootte converteren naar pixels met de globale functie AtlHiMetricTo Pixel.

CComControlBase::m_spAdviseSink

Een directe aanwijzer naar de adviesverbinding op de container (de IAdviseSink van de container).

CComPtr<IAdviseSink>
    m_spAdviseSink;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_spAmbientDispatch

Een CComDispatchDriver object waarmee u de eigenschappen van een object kunt ophalen en instellen via een IDispatch aanwijzer.

CComDispatchDriver m_spAmbientDispatch;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_spClientSite

Een aanwijzer naar de clientsite van het besturingselement binnen de container.

CComPtr<IOleClientSite>
    m_spClientSite;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

CComControlBase::m_spDataAdviseHolder

Biedt een standaardmethode voor het bewaren van adviesverbindingen tussen gegevensobjecten en het adviseren van sinks.

CComPtr<IDataAdviseHolder>
    m_spDataAdviseHolder;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

Een gegevensobject is een besturingselement dat gegevens kan overdragen en dat IDataObject implementeert, waarvan de methoden de indeling en overdrachtsmedium van de gegevens opgeven.

De interface m_spDataAdviseHolder implementeert de methoden IDataObject::D Advise en IDataObject::D Unadvise om adviesverbindingen met de container tot stand te brengen en te verwijderen. De container van het besturingselement moet een advies-sink implementeren door de IAdviseSink-interface te ondersteunen.

CComControlBase::m_spInPlaceSite

Een aanwijzer naar de interfacepointer IOleInPlaceSite, IOleInPlaceSiteEx of IOleInPlaceSiteWindowless .

CComPtr<IOleInPlaceSiteWindowless>
    m_spInPlaceSite;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

De m_spInPlaceSite aanwijzer is alleen geldig als de vlag m_bNegotiatedWnd WAAR is.

In de volgende tabel ziet u hoe het m_spInPlaceSite type aanwijzer afhankelijk is van de m_bWndLess en m_bInPlaceSiteEx gegevenslidvlagmen:

m_spInPlaceSite type m_bWndLess waarde m_bInPlaceSiteEx waarde
IOleInPlaceSiteWindowless TRUE TRUE of FALSE
IOleInPlaceSiteEx ONWAAR TRUE
IOleInPlaceSite ONWAAR ONWAAR

CComControlBase::m_spOleAdviseHolder

Biedt een standaard implementatie van een manier om adviesverbindingen vast te houden.

CComPtr<IOleAdviseHolder>
    m_spOleAdviseHolder;

Opmerkingen

Opmerking

Als u dit gegevenslid in uw controleklasse wilt gebruiken, moet u dit declareren als gegevenslid in uw controleklasse. Uw controleklasse neemt dit gegevenslid niet over van de basisklasse omdat deze wordt gedeclareerd binnen een samenvoeging in de basisklasse.

De interface m_spOleAdviseHolder implementeert de methoden IOleObject::Advise en IOleObject::Unadvise om adviesverbindingen met de container tot stand te brengen en te verwijderen. De container van het besturingselement moet een advies-sink implementeren door de IAdviseSink-interface te ondersteunen.

CComControlBase::OnDraw

Overschrijf deze methode om uw besturingselement te tekenen.

virtual HRESULT OnDraw(ATL_DRAWINFO& di);

Parameterwaarden

Di
Een verwijzing naar de ATL_DRAWINFO structuur die tekengegevens bevat, zoals het tekenaspect, de besturingselementgrenzen en of de tekening is geoptimaliseerd of niet.

Retourwaarde

Een standaard HRESULT-waarde.

Opmerkingen

De standaardinstelling OnDraw verwijdert of herstelt de apparaatcontext of doet niets, afhankelijk van de vlaggen die zijn ingesteld in CComControlBase::OnDrawAdvanced.

Er OnDraw wordt automatisch een methode aan uw besturingsklasse toegevoegd wanneer u uw besturingselement maakt met de wizard ATL-beheer. De standaardinstelling OnDraw van de wizard tekent een rechthoek met het label 'ATL 8.0'.

Example

Zie het voorbeeld voor CComControlBase::GetAmbientAppearance.

CComControlBase::OnDrawAdvanced

De standaardinstelling OnDrawAdvanced bereidt een genormaliseerde apparaatcontext voor op tekenen en roept vervolgens de methode van OnDraw uw besturingsklasse aan.

virtual HRESULT OnDrawAdvanced(ATL_DRAWINFO& di);

Parameterwaarden

Di
Een verwijzing naar de ATL_DRAWINFO structuur die tekengegevens bevat, zoals het tekenaspect, de besturingselementgrenzen en of de tekening is geoptimaliseerd of niet.

Retourwaarde

Een standaard HRESULT-waarde.

Opmerkingen

Overschrijf deze methode als u de apparaatcontext wilt accepteren die door de container wordt doorgegeven zonder deze te normaliseren.

Zie CComControlBase::OnDraw voor meer informatie.

CComControlBase::OnKillFocus

Controleert of het besturingselement actief is en een geldige besturingssite heeft en informeert vervolgens de container dat het besturingselement de focus heeft verloren.

LRESULT OnKillFocus(UINT /* nMsg */,
    WPARAM /* wParam */,
    LPARAM /* lParam */,
    BOOL& bHandled);

Parameterwaarden

nMsg
Gereserveerd.

wParam
Gereserveerd.

lParam
Gereserveerd.

bHandled
Vlag die aangeeft of het vensterbericht is verwerkt. De standaard is FOUT.

Retourwaarde

Geeft altijd 1 terug.

CComControlBase::OnMouseActivate

Controleert of de gebruikersinterface zich in de gebruikersmodus bevindt en activeert vervolgens het besturingselement.

LRESULT OnMouseActivate(UINT /* nMsg */,
    WPARAM /* wParam */,
    LPARAM /* lParam */,
    BOOL& bHandled);

Parameterwaarden

nMsg
Gereserveerd.

wParam
Gereserveerd.

lParam
Gereserveerd.

bHandled
Vlag die aangeeft of het vensterbericht is verwerkt. De standaard is FOUT.

Retourwaarde

Geeft altijd 1 terug.

CComControlBase::OnPaint

Bereidt de container voor op schilderen, haalt het clientgebied van het besturingselement op en roept vervolgens de methode van OnDrawAdvanced de besturingsklasse aan.

LRESULT OnPaint(UINT /* nMsg */,
    WPARAM wParam,
    LPARAM /* lParam */,
    BOOL& /* lResult */);

Parameterwaarden

nMsg
Gereserveerd.

wParam
Een bestaande HDC.

lParam
Gereserveerd.

lResult
Gereserveerd.

Retourwaarde

Geeft altijd nul terug.

Opmerkingen

Als wParam niet NULL is, OnPaint wordt ervan uitgegaan dat deze een geldige HDC bevat en deze gebruikt in plaats van CComControlBase::m_hWndCD.

CComControlBase::OnSetFocus

Controleert of het besturingselement actief is en heeft een geldige besturingssite en informeert vervolgens de container waarop het besturingselement de focus heeft gekregen.

LRESULT OnSetFocus(UINT /* nMsg */,
    WPARAM /* wParam */,
    LPARAM /* lParam */,
    BOOL& bHandled);

Parameterwaarden

nMsg
Gereserveerd.

wParam
Gereserveerd.

lParam
Gereserveerd.

bHandled
Vlag die aangeeft of het vensterbericht is verwerkt. De standaard is FOUT.

Retourwaarde

Geeft altijd 1 terug.

Opmerkingen

Hiermee wordt een melding verzonden naar de container waarop het besturingselement de focus heeft gekregen.

CComControlBase::P reTranslateAccelerator

Overschrijf deze methode om uw eigen handlers voor toetsenbordversnellers te bieden.

BOOL PreTranslateAccelerator(LPMSG /* pMsg */,
    HRESULT& /* hRet */);

Parameterwaarden


Gereserveerd.

hRet
Gereserveerd.

Retourwaarde

Standaard wordt FALSE geretourneerd.

CComControlBase::SendOnClose

Informeert alle adviessinkten die bij de adviserende houder zijn geregistreerd dat de controle is gesloten.

HRESULT SendOnClose();

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

Opmerkingen

Hiermee wordt een melding verzonden dat het besturingselement de adviessinks heeft gesloten.

CComControlBase::SendOnDataChange

Informeert alle adviessinks die bij de adviserende houder zijn geregistreerd dat de controlegegevens zijn gewijzigd.

HRESULT SendOnDataChange(DWORD advf = 0);

Parameterwaarden

advf
Adviseer vlaggen die aangeven hoe de aanroep naar IAdviseSink::OnDataChange wordt uitgevoerd. Waarden zijn afkomstig uit de OPSOMMING ADVF .

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

CComControlBase::SendOnRename

Informeert alle adviessinkten geregistreerd bij de adviserende houder dat de controle een nieuwe moniker heeft.

HRESULT SendOnRename(IMoniker* pmk);

Parameterwaarden

Pmk
Wijs de nieuwe moniker van het besturingselement aan.

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

Opmerkingen

Hiermee wordt een melding verzonden dat de moniker voor het besturingselement is gewijzigd.

CComControlBase::SendOnSave

Informeert alle adviessinkten die bij de adviserende houder zijn geregistreerd dat de controle is opgeslagen.

HRESULT SendOnSave();

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

Opmerkingen

Hiermee wordt een melding verzonden dat het besturingselement zojuist de gegevens heeft opgeslagen.

CComControlBase::SendOnViewChange

Hiermee worden alle geregistreerde adviessinks gemeld dat de weergave van het besturingselement is gewijzigd.

HRESULT SendOnViewChange(DWORD dwAspect, LONG lindex = -1);

Parameterwaarden

dwAspect
Het aspect of de weergave van het besturingselement.

lindex
Het gedeelte van de weergave dat is gewijzigd. Alleen -1 geldig is.

Retourwaarde

Retourneert S_OK bij succes of een fout HRESULT bij fout.

Opmerkingen

SendOnViewChange roept IAdviseSink::OnViewChange aan. De enige waarde van lindex die momenteel wordt ondersteund, is -1, wat aangeeft dat de hele weergave van belang is.

CComControlBase::SetControlFocus

Hiermee stelt u de focus van het toetsenbord naar of van het besturingselement in of verwijdert u deze.

BOOL SetControlFocus(BOOL bGrab);

Parameterwaarden

bGrab
Als WAAR is, stelt u de toetsenbordfocus in op het besturingselement voor oproepen. Als ONWAAR is, verwijdert u de toetsenbordfocus uit het besturingselement voor aanroepen, op voorwaarde dat het de focus heeft.

Retourwaarde

Retourneert TRUE als het besturingselement de focus krijgt; anders, ONWAAR.

Opmerkingen

Voor een besturingselement met vensters wordt de Windows API-functie SetFocus aangeroepen. Voor een vensterloze controle wordt IOleInPlaceSiteWindowless::SetFocus aangeroepen. Via deze oproep krijgt een besturingselement zonder venster de focus op het toetsenbord en kan het reageren op vensterberichten.

CComControlBase::SetDirty

Hiermee stelt u het gegevenslid m_bRequiresSave in op de waarde in bDirty.

void SetDirty(BOOL bDirty);

Parameterwaarden

bDirty
Waarde van het gegevenslid CComControlBase::m_bRequiresSave.

Opmerkingen

SetDirty(TRUE) moet worden aangeroepen om te markeren dat het besturingselement is gewijzigd sinds het voor het laatst is opgeslagen. De waarde wordt m_bRequiresSave opgehaald met CComControlBase::GetDirty.

Zie ook

CComControl-klasse
Overzicht van klassen