Megosztás a következőn keresztül:


COleControl-osztály

Megjegyzés:

A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Hatékony alaposztály az OLE-vezérlők fejlesztéséhez.

Szemantika

class COleControl : public CWnd

Tagok

Nyilvános konstruktorok

Név Description
COleControl::COleControl Létrehoz egy objektumot COleControl .

Nyilvános metódusok

Név Description
COleControl::AmbientAppearance Lekéri a vezérlő aktuális megjelenését.
COleControl::AmbientBackColor A környezeti BackColor tulajdonság értékét adja vissza.
COleControl::AmbientDisplayName A tároló által megadott vezérlőelem nevét adja vissza.
COleControl::AmbientFont A környezeti Betűtípus tulajdonság értékét adja vissza.
COleControl::AmbientForeColor A környezeti ForeColor tulajdonság értékét adja vissza.
COleControl::AmbientLocaleID A tároló területi azonosítóját adja vissza.
COleControl::AmbientScaleUnits A tároló által használt egységek típusát adja vissza.
COleControl::AmbientShowGrabHandles Meghatározza, hogy a fogópontok megjelenjenek-e.
COleControl::AmbientShowHatching Meghatározza, hogy megjelenjen-e a keltetés.
COleControl::AmbientTextAlign A tároló által megadott szövegigazítás típusát adja vissza.
COleControl::AmbientUIDead Meghatározza, hogy a vezérlőnek reagálnia kell-e a felhasználói felület műveleteire.
COleControl::AmbientUserMode Meghatározza a tároló módját.
COleControl::BoundPropertyChanged Értesíti a tárolót arról, hogy egy kötött tulajdonság módosult.
COleControl::BoundPropertyRequestEdit Engedélyt kér a tulajdonságérték szerkesztéséhez.
COleControl::ClientToParent A vezérlő forrásához viszonyított pontot a tároló eredetéhez képest egy pontra fordítja le.
COleControl::ClipCaretRect Módosítja a simított téglalapot, ha egy vezérlőelem átfedésben van.
COleControl::ControlInfoChanged Hívja meg ezt a függvényt, miután a vezérlő által kezelt mnemonikák halmaza megváltozott.
COleControl::D isplayError Megjeleníti a készlet hibaeseményeit a vezérlő felhasználójának.
COleControl::D oClick A készletmetódus DoClick megvalósítása.
COleControl::D oPropExchange Szerializálja egy COleControl objektum tulajdonságait.
COleControl::D oSuperclassPaint Újrarajzol egy OLE-vezérlőt, amely egy Windows-vezérlőből lett alosztályozott.
COleControl::EnableSimpleFrame Egyszerű kerettámogatást tesz lehetővé egy vezérlőhöz.
COleControl::ExchangeExtent Szerializálja a vezérlő szélességét és magasságát.
COleControl::ExchangeStockProps Szerializálja a vezérlő részvénytulajdonságait.
COleControl::ExchangeVersion Szerializálja a vezérlő verziószámát.
COleControl::FireClick Aktiválja a részvényeseményt Click .
COleControl::FireDblClick Aktiválja a részvényeseményt DblClick .
COleControl::FireError Aktiválja a részvényeseményt Error .
COleControl::FireEvent Egyéni eseményt aktivál.
COleControl::FireKeyDown Aktiválja a részvényeseményt KeyDown .
COleControl::FireKeyPress Aktiválja a részvényeseményt KeyPress .
COleControl::FireKeyUp Aktiválja a részvényeseményt KeyUp .
COleControl::FireMouseDown Aktiválja a részvényeseményt MouseDown .
COleControl::FireMouseMove Aktiválja a részvényeseményt MouseMove .
COleControl::FireMouseUp Aktiválja a részvényeseményt MouseUp .
COleControl::FireReadyStateChange Eseményt aktivál, amikor a vezérlő kész állapota megváltozik.
COleControl::GetActivationPolicy Módosítja az interfészt támogató vezérlők alapértelmezett aktiválási viselkedését IPointerInactive .
COleControl::GetAmbientProperty A megadott környezeti tulajdonság értékét adja vissza.
COleControl::GetAppearance A tőzsdei Megjelenés tulajdonság értékét adja eredményül.
COleControl::GetBackColor A Készlet BackColor tulajdonság értékét adja vissza.
COleControl::GetBorderStyle A BorderStyle részvénytulajdonság értékét adja eredményül.
COleControl::GetCapture Meghatározza, hogy egy ablak nélküli, aktivált vezérlőobjektum rendelkezik-e egérrögzítéssel.
COleControl::GetClassID Lekéri a vezérlő OLE osztályazonosítóját.
COleControl::GetClientOffset Lekéri a vezérlőelem négyszögletes területének bal felső sarkában és az ügyfélterület bal felső sarkában lévő különbséget.
COleControl::GetClientRect Lekéri a vezérlő ügyfélterületének méretét.
COleControl::GetClientSite Lekérdez egy objektumot a tárolón belüli aktuális ügyfélwebhelyre mutató mutatóhoz.
COleControl::GetControlFlags Lekéri a vezérlőjelölő beállításait.
COleControl::GetControlSize Az OLE vezérlő pozícióját és méretét adja vissza.
COleControl::GetDC Lehetővé teszi, hogy egy ablak nélküli vezérlő lekérjen egy eszközkörnyezetet a tárolóból.
COleControl::GetEnabled Az engedélyezett részvénytulajdonság értékét adja eredményül.
COleControl::GetExtendedControl Egy, a tárolóhoz tartozó kiterjesztett vezérlőobjektumra mutató mutatót kér le.
COleControl::GetFocus Meghatározza, hogy a vezérlő fókuszban van-e.
COleControl::GetFont A stock Font tulajdonság értékét adja vissza.
COleControl::GetFontTextMetrics Egy CFontHolder objektum metrikáit adja vissza.
COleControl::GetForeColor A ForeColor tulajdonság értékét adja eredményül.
COleControl::GetHwnd A hWnd részvénytulajdonság értékét adja eredményül.
COleControl::GetMessageString Állapotsorszöveget biztosít egy menüelemhez.
COleControl::GetNotSupported Megakadályozza, hogy a felhasználó hozzáférjen egy vezérlő tulajdonságértékéhez.
COleControl::GetReadyState A vezérlő készültségi állapotát adja vissza.
COleControl::GetRectInContainer A vezérlő téglalapját adja vissza a tárolóhoz viszonyítva.
COleControl::GetStockTextMetrics A stock Font tulajdonság metrikáit adja vissza.
COleControl::GetText A stock Text vagy Caption tulajdonság értékét adja vissza.
COleControl::GetWindowlessDropTarget Felülbírálás, amely lehetővé teszi, hogy egy ablak nélküli vezérlő legyen az húzási műveletek célja.
COleControl::InitializeIIIDs Tájékoztatja a vezérlő által használt IID-k alaposztályát.
COleControl::InternalGetFont CFontHolder Egy objektumot ad vissza a stock Font tulajdonsághoz.
COleControl::InternalGetText Lekéri a tőzsdei Felirat vagy Szöveg tulajdonságot.
COleControl::InternalSetReadyState Beállítja a vezérlő készültségi állapotát, és aktiválja a kész állapotváltozás eseményt.
COleControl::InvalidateControl Érvényteleníti a megjelenített vezérlő egy területét, ezért újrarajzolásra kerül.
COleControl::InvalidateRgn Érvényteleníti a tárolóablak ügyfélterületét az adott régión belül. A régió ablak nélküli vezérlőinek újrarajzzására használható.
COleControl::IsConvertingVBX Lehetővé teszi az OLE-vezérlők speciális betöltését.
COleControl::IsModified Meghatározza, hogy a vezérlő állapota megváltozott-e.
COleControl::IsOptimizedDraw Azt jelzi, hogy a tároló támogatja-e az aktuális rajzművelethez optimalizált rajzot.
COleControl::IsSubclassedControl Annak megállapításához, hogy a vezérlő egy Windows-vezérlőt alosztályozza-e.
COleControl::Load Alaphelyzetbe állítja a korábbi aszinkron adatokat, és elindítja a vezérlő aszinkron tulajdonságának új terhelését.
COleControl::LockInPlaceActive Meghatározza, hogy a vezérlő inaktiválható-e a tárolóval.
COleControl::OnAmbientPropertyChange A környezeti tulajdonság módosításakor hívható meg.
COleControl::OnAppearanceChanged A tőzsdei Megjelenés tulajdonság módosításakor hívható meg.
COleControl::OnBackColorChanged Az állomány BackColor tulajdonságának módosításakor hívható meg.
COleControl::OnBorderStyleChanged A BorderStyle részvénytulajdonság módosításakor hívható meg.
COleControl::OnClick Meghívták, hogy tűz a részvény Click esemény.
COleControl::OnClose Értesíti a hívott vezérlőt IOleControl::Close .
COleControl::OnDoVerb Egy vezérlő ige végrehajtása után lett meghívva.
COleControl::OnDraw Akkor hívjuk meg, amikor egy vezérlőt kérünk, hogy újrarajzozza magát.
COleControl::OnDrawMetafile A tároló meghívja, amikor egy vezérlőt egy metafájl-eszközkörnyezet használatával szeretne újra létrehozni.
COleControl::OnEdit A tároló meghívta az OLE-vezérlő aktiválására szolgáló felhasználói felületet.
COleControl::OnEnabledChanged Akkor hívjuk meg, ha a készlet engedélyezve tulajdonsága módosul.
COleControl::OnEnumVerbs A tároló meghívja egy vezérlő igéinek számbavételére.
COleControl::OnEventAdvise Akkor hívható meg, ha az eseménykezelők csatlakoztatva vannak vagy le vannak választva egy vezérlőről.
COleControl::OnFontChanged A készlet Betűtípus tulajdonságának módosításakor hívható meg.
COleControl::OnForeColorChanged Az állomány ForeColor tulajdonságának módosításakor hívható meg.
COleControl::OnFreezeEvents Akkor hívható meg, ha egy vezérlő eseményei le vannak fagyasztva vagy feloldva.
COleControl::OnGetColorSet Értesíti a hívott vezérlőt IOleObject::GetColorSet .
COleControl::OnGetControlInfo Mnemonikus információkat biztosít a tárolónak.
COleControl::OnGetDisplayString Egy tulajdonságértéket ábrázoló sztring lekérésére van meghívva.
COleControl::OnGetInPlaceMenu Kéri a vezérlő menüjének leíróját, amelyet a tárolómenüvel egyesítünk.
COleControl::OnGetNaturalExtent Felülbírálás a vezérlő tervezett méretéhez és méretéhez legközelebb eső megjelenítési méretének lekéréséhez.
COleControl::OnGetPredefinedStrings Egy tulajdonság lehetséges értékeit képviselő sztringeket ad vissza.
COleControl::OnGetPredefinedValue Egy előre definiált sztringnek megfelelő értéket adja vissza.
COleControl::OnGetViewExtent Felülbírálás a vezérlő megjelenítési területeinek méretének lekéréséhez (a kétlépéses rajz engedélyezéséhez használható).
COleControl::OnGetViewRect Felülbírálás a vezérlőelem méretének téglalapmá alakításához egy adott pozíciótól kezdve.
COleControl::OnGetViewStatus Felülbírálás a vezérlő nézetállapotának lekéréséhez.
COleControl::OnHideToolBars A tároló meghívja a vezérlő felhasználói felületének inaktiválásakor.
COleControl::OnInactiveMouseMove Felülbírálás, ha az egérmutató alatti inaktív vezérlő tárolója WM_MOUSEMOVE üzeneteket küld a vezérlőnek.
COleControl::OnInactiveSetCursor Felülbírálás, ha az egérmutató alatti inaktív vezérlő tárolója WM_SETCURSOR üzeneteket küld a vezérlőnek.
COleControl::OnKeyDownEvent A keyDown-esemény aktiválása után hívjuk.
COleControl::OnKeyPressEvent A KeyPress-esemény kirúgása után hívott.
COleControl::OnKeyUpEvent A KeyUp-esemény aktiválása után hívjuk.
COleControl::OnMapPropertyToPage Azt jelzi, hogy melyik tulajdonságlap legyen használva egy tulajdonság szerkesztéséhez.
COleControl::OnMnemonic Akkor hívjuk, ha a vezérlő mnemonikus kulcsát lenyomták.
COleControl::OnProperties A vezérlő "Tulajdonságok" parancsának meghívásakor hívható meg.
COleControl::OnQueryHitPoint Felülbírálás annak lekérdezéséhez, hogy egy vezérlő megjelenítése átfedésben van-e egy adott ponttal.
COleControl::OnQueryHitRect Felülbírálás annak lekérdezéséhez, hogy egy vezérlő megjelenítése átfedésben van-e egy adott téglalap bármely pontjával.
COleControl::OnRenderData A keretrendszer meghívta, hogy a megadott formátumban kérje le az adatokat.
COleControl::OnRenderFileData A keretrendszer meghívta, hogy adatokat kérjen le egy fájlból a megadott formátumban.
COleControl::OnRenderGlobalData A keretrendszer meghívta, hogy adatokat kérjen le a globális memóriából a megadott formátumban.
COleControl::OnResetState Visszaállítja egy vezérlő tulajdonságait az alapértelmezett értékekre.
COleControl::OnSetClientSite Értesíti a hívott vezérlőt IOleControl::SetClientSite .
COleControl::OnSetData A vezérlő adatait egy másik értékre cseréli.
COleControl::OnSetExtent A vezérlőelem kiterjedése megváltozása után hívható meg.
COleControl::OnSetObjectRects A vezérlőelem dimenzióinak módosítása után hívható meg.
COleControl::OnShowToolBars A vezérlő felhasználói felületének aktiválása után hívható meg.
COleControl::OnTextChanged A stock Text vagy Caption tulajdonság módosításakor hívható meg.
COleControl::OnWindowlessMessage Ablak nélküli vezérlők ablaküzeneteinek (az egér és a billentyűzet kivételével) kezelése.
COleControl::P arentToClient A tároló forrásához viszonyított pontot a vezérlő forrásához képest egy pontra fordítja le.
COleControl::P ostModalDialog Értesíti a tárolót, hogy bezárt egy modális párbeszédpanelt.
COleControl::P reModalDialog Értesíti a tárolót, hogy egy modális párbeszédpanel jelenik meg.
COleControl::RecreateControlWindow Elpusztítja és újra létrehozza a vezérlő ablakát.
COleControl::Frissítés Egy vezérlő megjelenésének újrafestése kényszeríti.
COleControl::ReleaseCapture Felszabadítja az egérrögzítést.
COleControl::ReleaseDC Egy ablak nélküli vezérlő tárolójának megjelenítési eszközkörnyezetét oldja fel.
COleControl::ReparentControlWindow Alaphelyzetbe állítja a vezérlőablak szülőét.
COleControl::ResetStockProps Inicializálja a részvénytulajdonságokat COleControl az alapértelmezett értékekkel.
COleControl::ResetVersion A verziószámot inicializálja egy adott értékre.
COleControl::ScrollWindow Lehetővé teszi, hogy egy ablak nélküli vezérlő görgetjen egy területet a helyi aktív képén belül a kijelzőn.
COleControl::SelectFontObject Egyéni Betűtípus tulajdonságot jelöl ki egy eszközkörnyezetben.
COleControl::SelectStockFont Kiválasztja a stock Font tulajdonságot egy eszközkörnyezetben.
COleControl::SerializeExtent Szerializálja vagy inicializálja a vezérlő megjelenítési területét.
COleControl::SerializeStockProps Szerializálja vagy inicializálja a COleControl részvénytulajdonságokat.
COleControl::SzerializeVersion Szerializálja vagy inicializálja a vezérlő verzióadatait.
COleControl::SetAppearance A stock Appearance tulajdonság értékét állítja be.
COleControl::SetBackColor A készlet BackColor tulajdonságának értékét állítja be.
COleControl::SetBorderStyle Beállítja a Stock BorderStyle tulajdonság értékét.
COleControl::SetCapture Ez azt eredményezi, hogy a vezérlő tárolóablaka átveszi az egérrögzítést a vezérlő nevében.
COleControl::SetControlSize Az OLE vezérlő pozícióját és méretét állítja be.
COleControl::SetEnabled Beállítja az engedélyezett részvénytulajdonság értékét.
COleControl::SetFocus Ez azt eredményezi, hogy a vezérlő tárolóablaka átveszi a vezérlő nevében lévő bemeneti fókuszt.
COleControl::SetFont A stock Font tulajdonság értékét állítja be.
COleControl::SetForeColor A ForeColor tulajdonság értékét állítja be.
COleControl::SetInitialSize Beállítja egy OLE-vezérlő méretét, amikor először megjelenik egy tárolóban.
COleControl::SetModifiedFlag Módosítja a vezérlőelem módosított állapotát.
COleControl::SetNotPermitted Azt jelzi, hogy egy szerkesztési kérelem meghiúsult.
COleControl::SetNotSupported Megakadályozza, hogy a felhasználó módosítsa a vezérlő tulajdonságértékét.
COleControl::SetRectInContainer Beállítja a vezérlő téglalapját a tárolóhoz képest.
COleControl::SetText A stock Text vagy Caption tulajdonság értékét állítja be.
COleControl::ThrowError Azt jelzi, hogy hiba történt egy OLE-vezérlőben.
COleControl::TransformCoords Átalakítja a tároló és a vezérlő közötti koordinátákat.
COleControl::TranslateColor Egy OLE_COLOR értéket COLORREF értékké alakít át.
COleControl::WillAmbientsBeValidDuringLoad Meghatározza, hogy a környezeti tulajdonságok elérhetők-e a vezérlő következő betöltésekor.
COleControl::WindowProc Windows-eljárást biztosít egy COleControl objektumhoz.

Védett metódusok

Név Description
COleControl::D rawContent A keretrendszer meghívja, amikor frissíteni kell a vezérlő megjelenését.
COleControl::D rawMetafile A keretrendszer meghívja a metafájl eszközkörnyezetének használatakor.
COleControl::IsInvokeAllowed Automatizálási metódus meghívását teszi lehetővé.
COleControl::SetInitialDataFormats A keretrendszer meghívta a vezérlő által támogatott adatformátumok listájának inicializálására.

Megjegyzések

Ez CWndaz osztály a Windows-ablakobjektumok összes funkcióját örökli, valamint az OLE-hez kapcsolódó további funkciókat, például az eseményégetést, valamint a metódusok és tulajdonságok támogatásának képességét.

Az OLE-vezérlők beszúrhatók az OLE tárolóalkalmazásokba, és kommunikálhatnak a tárolóval egy kétirányú eseményégetési és feltárási módszerek és tulajdonságok használatával a tároló számára. Vegye figyelembe, hogy a standard OLE-tárolók csak az OLE-vezérlők alapvető funkcióit támogatják. Nem támogatják az OLE-vezérlők kiterjesztett funkcióit. Az eseményégetés akkor történik, ha az eseményeket a tárolóba küldik a vezérlőben végrehajtott bizonyos műveletek eredményeként. A tároló viszont a C++ osztály tagfüggvényeivel és adattagjaival hasonló, közzétett metódusok és tulajdonságok segítségével kommunikál a vezérlővel. Ez a módszer lehetővé teszi, hogy a fejlesztő vezérelje a vezérlő megjelenését, és bizonyos műveletek esetén értesítse a tárolót.

Ablak nélküli vezérlők

Az OLE-vezérlők ablak nélkül is használhatók helyben aktívként. Az ablak nélküli vezérlőknek jelentős előnyei vannak:

  • Az ablak nélküli vezérlők lehetnek átlátszóak és nem téglalap alakúak

  • Az ablak nélküli vezérlők csökkentik az objektum példányméretét és létrehozási idejét

A vezérlőknek nincs szükségük ablakra. Az ablak által kínált szolgáltatások egyszerűen elérhetőek egyetlen megosztott ablakban (általában a tárolóban) és egy kis küldési kódon keresztül. Az ablak többnyire szükségtelen bonyodalmat jelent az objektumon.

Ablak nélküli aktiválás használatakor a tároló (amely rendelkezik ablakkal) felelős azért, hogy olyan szolgáltatásokat nyújtson, amelyeket egyébként a vezérlő saját ablaka biztosított volna. Ha például a vezérlőnek le kell kérdeznie a billentyűzetfókuszt, le kell kérdeznie az egérrögzítést, vagy le kell szereznie egy eszközkörnyezetet, ezeket a műveleteket a tároló kezeli. Az COleControl ablak nélküli művelet tagfüggvényei meghívják ezeket a műveleteket a tárolón.

Ha engedélyezve van az ablak nélküli aktiválás, a tároló a bemeneti üzeneteket a vezérlő felületére IOleInPlaceObjectWindowless delegálja (az IOleInPlaceObject bővítménye az ablak nélküli támogatáshoz). COleControlA felület megvalósítása a vezérlő üzenettérképén keresztül küldi el ezeket az üzeneteket az egér koordinátáinak megfelelő beállítása után. Ezeket az üzeneteket a szokásos ablakos üzenetekhez hasonlóan feldolgozhatja úgy, hogy hozzáadja a megfelelő bejegyzéseket az üzenettérképhez.

Ablak nélküli vezérlőkben mindig a COleControl tagfüggvényeket kell használnia a megfelelő CWnd tagfüggvények vagy azok kapcsolódó Windows API-függvényei helyett.

Az OLE vezérlőobjektumok csak akkor hozhatnak létre ablakot, ha aktívvá válnak, de az inaktív-aktív áttűnéshez szükséges munka mennyisége felmegy, és az áttűnés sebessége csökken. Vannak olyan esetek, amikor ez probléma: például fontolja meg a szövegdobozok rácsát. Az oszlopon felfelé és lefelé mutató összes vezérlőt aktiválni kell, majd inaktiválni kell. Az inaktív/aktív áttűnés sebessége közvetlenül befolyásolja a görgetési sebességet.

Az OLE-vezérlők fejlesztéséről további információt az MFC ActiveX-vezérlők és az áttekintés: MFC ActiveX-vezérlőprogram létrehozása című cikkben talál. Az OLE-vezérlők optimalizálásával kapcsolatos információkért, beleértve az ablak nélküli és a villódzásmentes vezérlőket, tekintse meg az MFC ActiveX-vezérlők: optimalizálás című témakört.

Öröklési hierarchia

CObject

CCmdTarget

CWnd

COleControl

Requirements

Fejléc: afxctl.h

COleControl::AmbientBackColor

A környezeti BackColor tulajdonság értékét adja vissza.

OLE_COLOR AmbientBackColor();

Visszaadott érték

A tároló környezeti BackColor tulajdonságának aktuális értéke, ha van ilyen. Ha a tulajdonság nem támogatott, ez a függvény a Rendszer által definiált Windows háttérszínt adja vissza.

Megjegyzések

A környezeti BackColor tulajdonság minden vezérlő számára elérhető, és a tároló határozza meg. Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientDisplayName

A tároló által a vezérlőhöz rendelt név használható a felhasználónak megjelenített hibaüzenetekben.

CString AmbientDisplayName();

Visszaadott érték

Az OLE-vezérlő neve. Az alapértelmezett érték egy nulla hosszúságú sztring.

Megjegyzések

Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientFont

A környezeti Betűtípus tulajdonság értékét adja vissza.

LPFONTDISP AmbientFont();

Visszaadott érték

Mutató a tároló környezeti betűtípus-küldő felületére. Az alapértelmezett érték NULL. Ha a visszatérés nem egyenlő a NULL értékkel, a betűtípus kiadásáért a felelős az IUnknown::Release tag függvény meghívásával.

Megjegyzések

A környezeti betűtípus tulajdonságot a tároló határozza meg, és minden vezérlő számára elérhető. Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientForeColor

A környezeti ForeColor tulajdonság értékét adja vissza.

OLE_COLOR AmbientForeColor();

Visszaadott érték

A tároló környezeti ForeColor tulajdonságának aktuális értéke, ha van ilyen. Ha nem támogatott, ez a függvény a rendszer által definiált Windows szövegszínt adja vissza.

Megjegyzések

A környezeti ForeColor tulajdonság minden vezérlő számára elérhető, és a tároló határozza meg. Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientLocaleID

A tároló területi azonosítóját adja vissza.

LCID AmbientLocaleID();

Visszaadott érték

A tároló LocaleID tulajdonságának értéke, ha van ilyen. Ha ez a tulajdonság nem támogatott, ez a függvény 0 értéket ad vissza.

Megjegyzések

A vezérlő a LocaleID használatával módosíthatja a felhasználói felületét adott területi beállításokhoz. Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientAppearance

Lekéri a vezérlőobjektum aktuális megjelenési beállítását.

short AmbientAppearance();

Visszaadott érték

A vezérlő megjelenése:

  • 0 Lapos megjelenés

  • 1 térhatású megjelenés

Megjegyzések

Hívja meg ezt a függvényt a vezérlőelem DISPID_AMBIENT_APPEARANCE tulajdonságának aktuális értékének lekéréséhez.

COleControl::AmbientScaleUnits

A tároló által használt egységek típusát adja vissza.

CString AmbientScaleUnits();

Visszaadott érték

A tároló környezeti ScaleUnits-jait tartalmazó sztring. Ha ez a tulajdonság nem támogatott, ez a függvény nulla hosszúságú sztringet ad vissza.

Megjegyzések

A tároló környezeti ScaleUnits tulajdonsága a kiválasztott egységgel címkézett pozíciók vagy dimenziók, például gallyak vagy centiméterek megjelenítésére használható. Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientShowGrabHandles

Meghatározza, hogy a tároló lehetővé teszi-e, hogy a vezérlő aktív állapotban is megjelenítse a fogópontokat.

BOOL AmbientShowGrabHandles();

Visszaadott érték

Nonzero, ha a fogópontoknak meg kell jelennie; egyéb esetben 0. Ha ez a tulajdonság nem támogatott, ez a függvény a nonzero értéket adja vissza.

Megjegyzések

Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientShowHatching

Meghatározza, hogy a tároló lehetővé teszi-e, hogy a vezérlő kikelt mintával jelenítse meg magát, amikor a felhasználói felület aktív.

BOOL AmbientShowHatching();

Visszaadott érték

Nemzero, ha a kikelt mintát meg kell jeleníteni; egyéb esetben 0. Ha ez a tulajdonság nem támogatott, ez a függvény a nonzero értéket adja vissza.

Megjegyzések

Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientTextAlign

Meghatározza a vezérlőtároló által előnyben részesített környezeti szöveg igazítását.

short AmbientTextAlign();

Visszaadott érték

A tároló környezeti TextAlign tulajdonságának állapota. Ha ez a tulajdonság nem támogatott, ez a függvény 0 értéket ad vissza.

Az alábbi lista érvényes visszatérési értékeket tartalmaz:

Visszaadott érték Meaning
0 Általános igazítás (számok jobbra, szöveg balra).
1 Bal oldali sorkizárás
2 Központ
3 Jobb oldali sorkizárás

Megjegyzések

Ez a tulajdonság minden beágyazott vezérlő számára elérhető, és a tároló határozza meg. Vegye figyelembe, hogy a tulajdonság támogatásához nem szükséges a tároló.

COleControl::AmbientUIDead

Meghatározza, hogy a tároló válaszoljon-e a vezérlőnek a felhasználói felület műveleteire.

BOOL AmbientUIDead();

Visszaadott érték

Nem, ha a vezérlőnek reagálnia kell a felhasználói felület műveleteire; egyéb esetben 0. Ha ez a tulajdonság nem támogatott, ez a függvény 0 értéket ad vissza.

Megjegyzések

Előfordulhat például, hogy egy tároló tervező módban IGAZ értékre állítja ezt be.

COleControl::AmbientUserMode

Meghatározza, hogy a tároló tervezési vagy felhasználói módban van-e.

BOOL AmbientUserMode();

Visszaadott érték

Nonzero, ha a tároló felhasználói módban van; egyébként 0 (tervező módban). Ha ez a tulajdonság nem támogatott, ez a függvény IGAZ értéket ad vissza.

Megjegyzések

Egy tároló például hamis értékre állíthatja ezt tervező módban.

COleControl::BoundPropertyChanged

Azt jelzi, hogy a kötött tulajdonság értéke megváltozott.

void BoundPropertyChanged(DISPID dispid);

Paraméterek

dispid
A vezérlő egy kötött tulajdonságának kézbesítési azonosítója.

Megjegyzések

Ezt minden alkalommal meg kell hívni, amikor a tulajdonság értéke megváltozik, még akkor is, ha a módosítás nem a Tulajdonságkészlet metóduson keresztül történt. Különösen ügyeljen a tagváltozókra leképezett kötött tulajdonságokra. Minden alkalommal, amikor egy tagváltozó megváltozik, BoundPropertyChanged meg kell hívni.

COleControl::BoundPropertyRequestEdit

Engedélyt kér a kezelőfelülettől a IPropertyNotifySink vezérlőelem által megadott kötött tulajdonságérték módosításához.

BOOL BoundPropertyRequestEdit(DISPID dispid);

Paraméterek

dispid
A vezérlő egy kötött tulajdonságának kézbesítési azonosítója.

Visszaadott érték

Nonzero, ha a módosítás engedélyezett; egyéb esetben 0. Az alapértelmezett érték a nonzero.

Megjegyzések

Ha az engedély megtagadva, a vezérlő nem hagyhatja, hogy a tulajdonság értéke megváltozzon. Ezt úgy teheti meg, hogy figyelmen kívül hagyja vagy nem hajtja végre a tulajdonságérték módosítását megkísérlő műveletet.

COleControl::ClientToParent

A pPoint koordinátáit szülőkoordinátákká fordítja le.

virtual void ClientToParent(
    LPCRECT lprcBounds,
    LPPOINT pPoint) const;

Paraméterek

lprcBounds
Mutasson a tárolón belüli OLE-vezérlő határaira. Nem az ügyfélterület, hanem a teljes vezérlő területe, beleértve a szegélyeket és a görgetősávokat.

pPoint
Mutasson az OLE-ügyfélterület pontjára, amelyet a szülő (tároló) koordinátáira kell lefordítani.

Megjegyzések

A bemeneti pPoint az OLE vezérlő ügyfélterületének eredetéhez viszonyítva (a vezérlő ügyfélterületének bal felső sarkában). A kimeneti pPoint a szülő forrásához (a tároló bal felső sarkához) viszonyítva van.

COleControl::ClipCaretRect

Módosítja a simított téglalapot, ha teljesen vagy részben fedik egymást átfedő, átlátszatlan objektumok.

BOOL ClipCaretRect(LPRECT lpRect);

Paraméterek

lpRect
Bemenetkor egy rect struktúra mutatója, amely tartalmazza a módosítandó simítási területet. A kimeneten a korrigált simított terület vagy NULL érték, ha a simított téglalap teljesen lefedve van.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

A simogató egy villogó vonal, blokk vagy bitkép, amely általában azt jelzi, hogy hová lesz beszúrva a szöveg vagy a grafika.

Az ablak nélküli objektumok nem jeleníthetők meg biztonságosan anélkül, hogy először ellenőrizné, hogy a simító részben vagy teljesen elrejtve van-e átfedésben lévő objektumokkal. Annak érdekében, hogy ez lehetséges legyen, egy objektum a simítás beállítására (csökkentésére) használhatja ClipCaretRect , hogy az elférjen a kivágási régióban.

A gondviseletet létrehozó objektumoknak be kell küldenie a simító téglalapot ClipCaretRect , és használniuk kell a simítóhoz beállított téglalapot. Ha a gondviselet teljesen rejtett, ez a módszer HAMIS értéket ad vissza, és ebben az esetben a simító egyáltalán nem jelenik meg.

COleControl::COleControl

Egy COleControl objektumot hoz létre.

COleControl();

Megjegyzések

Ez a függvény általában nem közvetlenül van meghívva. Ehelyett az OLE vezérlőt általában az osztálygyár hozza létre.

COleControl::ControlInfoChanged

Hívja meg ezt a függvényt, ha a vezérlő által támogatott mnemonikák halmaza megváltozott.

void ControlInfoChanged();

Megjegyzések

Az értesítés beérkezésekor a vezérlő tárolója az IOleControl::GetControlInfo hívásával szerzi be az új mnemonics készletet. Vegye figyelembe, hogy a tárolónak nem kell válaszolnia erre az értesítésre.

COleControl::D isplayError

A keretrendszer meghívta a készlet hibaeseményének kezelése után (kivéve, ha az eseménykezelő letiltotta a hiba megjelenítését).

virtual void DisplayError(
    SCODE scode,
    LPCTSTR lpszDescription,
    LPCTSTR lpszSource,
    LPCTSTR lpszHelpFile,
    UINT nHelpID);

Paraméterek

scode
A jelenteni kívánt állapotkód értéke. A lehetséges kódok teljes listáját az ActiveX-vezérlők: Speciális témakörök című cikkben találja.

lpszDescription
A jelentett hiba leírása.

lpszSource
A hibát generáló modul neve (általában az OLE vezérlőmodul neve).

lpszHelpFile
A hiba leírását tartalmazó súgófájl neve.

nHelpID
A jelentett hiba súgókörnyezet-azonosítója.

Megjegyzések

Az alapértelmezett viselkedés egy üzenetmezőt jelenít meg, amely tartalmazza a hiba leírását az lpszDescriptionban.

A függvény felülbírálása a hibák megjelenítésének testreszabásához.

COleControl::D oClick

Egérkattintásos műveletet szimulál a vezérlőn.

void DoClick();

Megjegyzések

A rendszer meghívja a felülírható COleControl::OnClick tagfüggvényt, és aktivál egy részvénykattintás eseményt, ha a vezérlő támogatja.

Ezt a függvényt az COleControl alaposztály támogatja készletmetódusként, a DoClick néven. További információ: ActiveX-vezérlők: Metódusok.

COleControl::D oPropExchange

A keretrendszer meghívja, amikor egy vezérlőt egy állandó tárterület-ábrázolásból tölt be vagy tárol, például streamből vagy tulajdonságkészletből.

virtual void DoPropExchange(CPropExchange* pPX);

Paraméterek

pPX
Egy objektumra mutató CPropExchange mutató. A keretrendszer biztosítja ezt az objektumot a tulajdonságcsere kontextusának meghatározásához, beleértve annak irányát is.

Megjegyzések

Ez a függvény általában meghívja a PX_ függvénycsaládot, hogy betöltse vagy tárolja az OLE-vezérlők felhasználó által meghatározott tulajdonságait.

Ha a Vezérlővarázslóval hozták létre az OLE vezérlőprojektet, a függvény felül bírált verziója szerializálja az alaposztályfüggvény hívásával COleControl támogatott készlettulajdonságokat. COleControl::DoPropExchange Amikor felhasználó által definiált tulajdonságokat ad hozzá az OLE-vezérlőhöz, módosítania kell ezt a függvényt az új tulajdonságok szerializálásához. A szerializálásról további információt az ActiveX-vezérlők: Szerializálás című cikkben talál.

COleControl::D oSuperclassPaint

Újrarajzol egy OLE-vezérlőt, amely egy Windows-vezérlőből lett alosztályozott.

void DoSuperclassPaint(
    CDC* pDC,
    const CRect& rcBounds);

Paraméterek

Pdc
Mutató a vezérlőtároló eszközkörnyezetére.

rcBounds
Az a terület, ahol a vezérlőt meg kell rajzolni.

Megjegyzések

Hívja meg ezt a függvényt, hogy megfelelően kezelje a nem aktív OLE-vezérlők festését. Ezt a függvényt csak akkor szabad használni, ha az OLE-vezérlő egy Windows-vezérlő alosztálya, és a OnDraw vezérlő függvényében kell meghívni.

A függvényről és a Windows-vezérlők alosztályozásáról az ActiveX-vezérlők: Windows-vezérlők alosztályozása című cikkben talál további információt.

COleControl::D rawContent

A keretrendszer meghívja, amikor frissíteni kell a vezérlő megjelenését.

void DrawContent(
    CDC* pDC,
    CRect& rc);

Paraméterek

Pdc
Mutasson az eszközkörnyezetre.

Rc
Téglalap alakú terület, amelybe be kell húzni.

Megjegyzések

Ez a függvény közvetlenül meghívja a felülírható függvényt OnDraw .

COleControl::D rawMetafile

A keretrendszer meghívja a metafájl eszközkörnyezetének használatakor.

void DrawMetafile(
    CDC* pDC,
    CRect& rc);

Paraméterek

Pdc
Mutasson a metafájl eszközkörnyezetére.

Rc
Téglalap alakú terület, amelybe be kell húzni.

COleControl::EnableSimpleFrame

Lehetővé teszi az OLE-vezérlők egyszerű keretjellemzőjét.

void EnableSimpleFrame();

Megjegyzések

Ez a jellemző lehetővé teszi, hogy a vezérlők támogatják más vezérlők vizuális elszigetelését, de nem igaz OLE-elszigetelést. Ilyen például egy több vezérlőt tartalmazó csoportmező. Ezek a vezérlők nem tartalmaznak OLE-t, de ugyanabban a csoportban vannak.

COleControl::ExchangeExtent

Szerializálja vagy inicializálja a vezérlő kiterjedésének állapotát (méretei HIMETRIC egységekben).

BOOL ExchangeExtent(CPropExchange* pPX);

Paraméterek

pPX
Egy CPropExchange objektumra mutató mutató. A keretrendszer biztosítja ezt az objektumot a tulajdonságcsere kontextusának meghatározásához, beleértve annak irányát is.

Visszaadott érték

Nemzero, ha a függvény sikeres volt; 0 egyéb esetben.

Megjegyzések

Ezt a függvényt általában az alapértelmezett implementáció COleControl::DoPropExchangehívja meg.

COleControl::ExchangeStockProps

Szerializálja vagy inicializálja a vezérlő részvénytulajdonságainak állapotát.

void ExchangeStockProps(CPropExchange* pPX);

Paraméterek

pPX
Egy CPropExchange objektumra mutató mutató. A keretrendszer biztosítja ezt az objektumot a tulajdonságcsere kontextusának meghatározásához, beleértve annak irányát is.

Megjegyzések

Ezt a függvényt általában az alapértelmezett implementáció COleControl::DoPropExchangehívja meg.

COleControl::ExchangeVersion

Szerializálja vagy inicializálja a vezérlő verzióadatainak állapotát.

BOOL ExchangeVersion(
    CPropExchange* pPX,
    DWORD dwVersionDefault,
    BOOL bConvert = TRUE);

Paraméterek

pPX
Egy objektumra mutató CPropExchange mutató. A keretrendszer biztosítja ezt az objektumot a tulajdonságcsere kontextusának meghatározásához, beleértve annak irányát is.

dwVersionDefault
A vezérlő aktuális verziószáma.

bConvert
Azt jelzi, hogy az állandó adatokat mentéskor a legújabb formátumra kell-e konvertálni, vagy a betöltött formátumban kell-e karbantartani.

Visszaadott érték

A függvény nonzero-jának sikeres volt; 0 egyéb esetben.

Megjegyzések

Általában ez lesz az első függvény, amelyet egy vezérlő felülbírálása COleControl::DoPropExchangehív meg. Betöltéskor ez a függvény beolvassa az állandó adatok verziószámát, és ennek megfelelően állítja be a CPropExchange objektum verzióattribútumát. Mentéskor ez a függvény megírja az állandó adatok verziószámát.

Az adatmegőrzéssel és a verziószámozással kapcsolatos további információkért tekintse meg az ActiveX-vezérlők: Szerializálás című cikket.

COleControl::FireClick

A keretrendszer meghívja, amikor az egér egy aktív vezérlőre kattint.

void FireClick();

Megjegyzések

Ha ez az esemény egyéni eseményként van definiálva, ön határozza meg, hogy mikor aktiválódik az esemény.

A Click-esemény automatikus aktiválásához a vezérlő eseménytérképének meg kell határoznia egy részvénykattintási eseményt.

COleControl::FireDblClick

A keretrendszer meghívja, amikor az egér duplán kattint egy aktív vezérlőre.

void FireDblClick();

Megjegyzések

Ha ez az esemény egyéni eseményként van definiálva, ön határozza meg, hogy mikor aktiválódik az esemény.

A DblClick-események automatikus aktiválásához a vezérlő eseménytérképének meg kell határoznia egy tőzsdei DblClick-eseményt.

COleControl::FireError

Aktiválja a készlet hibaeseményét.

void FireError(
    SCODE scode,
    LPCTSTR lpszDescription,
    UINT nHelpID = 0);

Paraméterek

scode
A jelenteni kívánt állapotkód értéke. A lehetséges kódok teljes listáját az ActiveX-vezérlők: Speciális témakörök című cikkben találja.

lpszDescription
A jelentett hiba leírása.

nHelpID
A jelentett hiba súgóazonosítója.

Megjegyzések

Ez az esemény lehetővé teszi annak jelzését, hogy a kód megfelelő helyeinél hiba történt a vezérlőben. Más részvényeseményekkel ellentétben, mint például a Click vagy a MouseMove, a keretrendszer soha nem aktiválja a hibát.

Ha egy tulajdonságlekérési függvény, tulajdonságkészletfüggvény vagy automatizálási metódus során előforduló hibát szeretne jelenteni, hívja meg a COleControl::ThrowError parancsot.

Az OLE-vezérlő Stock Error eseményének megvalósítása SCODE-értéket használ. Ha a vezérlő ezt az eseményt használja, és a Visual Basic 4.0-ban szeretné használni, hibaüzenetek fognak érkezni, mert az SCODE-érték nem támogatott a Visual Basicben.

Ennek kijavításához manuálisan módosítsa az SCODE paramétert a vezérlőben. ODL-fájl egy long. Emellett minden SCODE-paramétert használó egyéni esemény, metódus vagy tulajdonság is ugyanazt a problémát okozza.

COleControl::FireEvent

Felhasználó által definiált eseményt aktivál a vezérlőből tetszőleges számú választható argumentummal.

void AFX_CDECL FireEvent(
    DISPID dispid,
    BYTE* pbParams,
...);

Paraméterek

dispid
Az aktiválni kívánt esemény kézbesítési azonosítója.

pbParams
Az esemény paramétertípusainak leírója.

Megjegyzések

Ezt a függvényt általában nem szabad közvetlenül meghívni. Ehelyett meghívja az eseményindító függvényeket a vezérlő osztálydeklarációjának eseménytérkép szakaszában.

A pbParams argumentum a VTS_ szóközzel elválasztott listája. Ezen értékek közül legalább egy szóközökkel (nem vesszőkkel) elválasztva határozza meg a függvény paraméterlistáját. A lehetséges értékek a következők:

Szimbólum Paraméter típusa
VTS_COLOR OLE_COLOR
VTS_FONT IFontDisp*
VTS_HANDLE HWND
VTS_PICTURE IPictureDisp*
VTS_OPTEXCLUSIVE OLE_OPTEXCLUSIVE*
VTS_TRISTATE OLE_TRISTATE
VTS_XPOS_HIMETRIC OLE_XPOS_HIMETRIC
VTS_YPOS_HIMETRIC OLE_YPOS_HIMETRIC
VTS_XPOS_PIXELS OLE_XPOS_PIXELS
VTS_YPOS_PIXELS OLE_YPOS_PIXELS
VTS_XSIZE_PIXELS OLE_XSIZE_PIXELS
VTS_YSIZE_PIXELS OLE_XSIZE_PIXELS
VTS_XSIZE_HIMETRIC OLE_XSIZE_HIMETRIC
VTS_YSIZE_HIMETRIC OLE_XSIZE_HIMETRIC

Megjegyzés:

Az összes változattípushoz további variánsállandók lettek definiálva, a VTS_FONT és a VTS_PICTURE kivételével, amelyek mutatót biztosítanak a variáns adatállandóhoz. Ezeket az állandókat a VTS_P<CONSTANT-NAME> konvencióval nevezik el. A VTS_PCOLOR például egy VTS_COLOR állandóra mutató mutató.

COleControl::FireKeyDown

A keretrendszer meghívja, amikor a vezérlő aktív felhasználói felülettel rendelkezik, amikor egy kulcs le van nyomva.

void FireKeyDown(
    USHORT* pnChar,
    short nShiftState);

Paraméterek

pnChar
Mutasson a lenyomott kulcs virtuális kulcskódjának értékére. A szabványos virtuális kulcskódok listájáért lásd: Winuser.h

nShiftState
A következő jelölők kombinációját tartalmazza:

  • SHIFT_MASK A SHIFT billentyűt a művelet során lenyomta.

  • CTRL_MASK A CTRL billentyűt a művelet közben lenyomta.

  • ALT_MASK Az ALT billentyűt a művelet során lenyomta.

Megjegyzések

Ha ez az esemény egyéni eseményként van definiálva, ön határozza meg, hogy mikor aktiválódik az esemény.

Egy KeyDown-esemény automatikus aktiválásához a vezérlő eseménytérképének meg kell határoznia egy keyDown-eseményt.

COleControl::FireKeyPress

A keretrendszer meghívja, amikor a rendszer lenyom egy kulcsot, és kiadja őket, miközben az egyéni vezérlő a tárolón belül aktív felhasználói felülettel rendelkezik.

void FireKeyPress(USHORT* pnChar);

Paraméterek

pnChar
A lenyomott kulcs karakterértékére mutató mutató.

Megjegyzések

Ha ez az esemény egyéni eseményként van definiálva, ön határozza meg, hogy mikor aktiválódik az esemény.

Az esemény címzettje módosíthatja a pnChar értéket, például az összes kisbetűt nagybetűvé alakíthatja. Ha meg szeretné vizsgálni a módosított karaktert, felülbírálás OnKeyPressEvent.

Egy KeyPress-esemény automatikus égetéséhez a vezérlő eseménytérképének meg kell határoznia egy keyPress-eseményt.

COleControl::FireKeyUp

A keretrendszer meghívja egy kulcs felszabadításakor, miközben az egyéni vezérlő a tárolón belül aktív felhasználói felülettel rendelkezik.

void FireKeyUp(
    USHORT* pnChar,
    short nShiftState);

Paraméterek

pnChar
Mutasson a kiadott kulcs virtuális kulcskódjának értékére. A szabványos virtuális kulcskódok listájáért lásd: Winuser.h

nShiftState
A következő jelölők kombinációját tartalmazza:

  • SHIFT_MASK A SHIFT billentyűt a művelet során lenyomta.

  • CTRL_MASK A CTRL billentyűt a művelet közben lenyomta.

  • ALT_MASK Az ALT billentyűt a művelet során lenyomta.

Megjegyzések

Ha ez az esemény egyéni eseményként van definiálva, ön határozza meg, hogy mikor aktiválódik az esemény.

Egy KeyUp-esemény automatikus aktiválásához a vezérlő eseménytérképének meg kell határoznia egy készlet KeyUp-eseményt.

COleControl::FireMouseDown

A keretrendszer meghívja, amikor egy egérgombot egy aktív egyéni vezérlő fölé nyom.

void FireMouseDown(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Paraméterek

nButton
Az egérgomb numerikus értéke lenyomva. A következő értékek egyikét tartalmazhatja:

  • LEFT_BUTTON A bal egérgomb le lett nyomva.

  • MIDDLE_BUTTON A középső egérgomb le lett nyomva.

  • RIGHT_BUTTON A jobb egérgomb le lett nyomva.

nShiftState
A következő jelölők kombinációját tartalmazza:

  • SHIFT_MASK A SHIFT billentyűt a művelet során lenyomta.

  • CTRL_MASK A CTRL billentyűt a művelet közben lenyomta.

  • ALT_MASK Az ALT billentyűt a művelet során lenyomta.

x
A kurzor x koordinátája az egérgomb lenyomásakor. A koordináta a vezérlőablak bal felső sarkához viszonyítva van.

y
A kurzor y koordinátája az egérgomb lenyomásakor. A koordináta a vezérlőablak bal felső sarkához viszonyítva van.

Megjegyzések

Ha ez az esemény egyéni eseményként van definiálva, ön határozza meg, hogy mikor aktiválódik az esemény.

A MouseDown-esemény automatikus aktiválásához a vezérlő eseménytérképének meg kell határoznia egy tőzsdei MouseDown-eseményt.

COleControl::FireMouseMove

A keretrendszer meghívta, amikor a kurzor egy aktív egyéni vezérlő fölé kerül.

void FireMouseMove(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Paraméterek

nButton
A lenyomott egérgombok numerikus értéke. A következő értékek kombinációját tartalmazza:

  • LEFT_BUTTON A művelet során a bal egérgomb le lett nyomva.

  • MIDDLE_BUTTON A művelet során a középső egérgomb le lett nyomva.

  • RIGHT_BUTTON A művelet során a jobb egérgomb le lett nyomva.

nShiftState
A következő jelölők kombinációját tartalmazza:

  • SHIFT_MASK A SHIFT billentyűt a művelet során lenyomta.

  • CTRL_MASK A CTRL billentyűt a művelet közben lenyomta.

  • ALT_MASK Az ALT billentyűt a művelet során lenyomta.

x
A kurzor x koordinátája. A koordináta a vezérlőablak bal felső sarkához viszonyítva van.

y
A kurzor y koordinátája. A koordináta a vezérlőablak bal felső sarkához viszonyítva van.

Megjegyzések

Ha ez az esemény egyéni eseményként van definiálva, ön határozza meg, hogy mikor aktiválódik az esemény.

A MouseMove esemény automatikus aktiválásához a vezérlő eseménytérképének rendelkeznie kell egy stock MouseMove-esemény definiálásával.

COleControl::FireMouseUp

A keretrendszer meghívja, amikor egy egérgomb egy aktív egyéni vezérlőn keresztül jelenik meg.

void FireMouseUp(
    short nButton,
    short nShiftState,
    OLE_XPOS_PIXELS x,
    OLE_YPOS_PIXELS y);

Paraméterek

nButton
Az egérgomb numerikus értéke kiadva. A következő értékek egyikével rendelkezhet:

  • LEFT_BUTTON A bal egérgomb ki lett adva.

  • MIDDLE_BUTTON A középső egérgomb ki lett adva.

  • RIGHT_BUTTON A jobb egérgomb ki lett adva.

nShiftState
A következő jelölők kombinációját tartalmazza:

  • SHIFT_MASK A SHIFT billentyűt a művelet során lenyomta.

  • CTRL_MASK A CTRL billentyűt a művelet közben lenyomta.

  • ALT_MASK Az ALT billentyűt a művelet során lenyomta.

x
A kurzor x koordinátája az egérgomb megjelenésekor. A koordináta a vezérlőablak bal felső sarkához viszonyítva van.

y
A kurzor y koordinátája az egérgomb megjelenésekor. A koordináta a vezérlőablak bal felső sarkához viszonyítva van.

Megjegyzések

Ha ez az esemény egyéni eseményként van definiálva, ön határozza meg, hogy mikor aktiválódik az esemény.

A MouseUp esemény automatikus aktiválásához a vezérlő eseménytérképének meg kell határoznia egy stock MouseUp eseményt.

COleControl::FireReadyStateChange

Aktivál egy eseményt a vezérlés kész állapotának aktuális értékével.

void FireReadyStateChange();

Megjegyzések

A kész állapot a következő értékek egyike lehet:

Név Description
READYSTATE_UNINITIALIZED Alapértelmezett inicializálási állapot
READYSTATE_LOADING A vezérlő jelenleg betölti a tulajdonságait
READYSTATE_LOADED A vezérlő inicializálva lett
READYSTATE_INTERACTIVE A vezérlő rendelkezik elegendő adatval az interaktív működéshez, de még nem minden aszinkron adat van betöltve
READYSTATE_COMPLETE A vezérlő minden adatával rendelkezik

A GetReadyState használatával állapítsa meg a vezérlő aktuális készültségét.

Az InternalSetReadyState a kész állapotot a megadott értékre módosítja, majd meghívja a hívásokat FireReadyStateChange.

COleControl::GetActivationPolicy

Módosítja az interfészt támogató vezérlők alapértelmezett aktiválási viselkedését IPointerInactive .

virtual DWORD GetActivationPolicy();

Visszaadott érték

A POINTERINACTIVE enumerálás jelzőinek kombinációja. A lehetséges jelzők a következők:

Név Description
POINTERINACTIVE_ACTIVATEONENTRY Az objektumnak helyben aktiválva kell lennie, amikor az egér beírja az egérmozgatási művelet során.
POINTERINACTIVE_DEACTIVATEONLEAVE Az objektumot inaktiválni kell, amikor az egér egy egérmozgatási művelet során elhagyja az objektumot.
POINTERINACTIVE_ACTIVATEONDRAG Az objektumnak helyben aktiválva kell lennie, amikor az egér húzással áthúzódik rajta egy húzási művelet során.

Megjegyzések

Ha a IPointerInactive felület engedélyezve van, a tároló WM_SETCURSOR delegálja és WM_MOUSEMOVE üzeneteket. COleControlA felület megvalósítása a vezérlő üzenettérképén keresztül küldi el ezeket az üzeneteket az egér koordinátáinak megfelelő beállítása után.

Amikor a tároló WM_SETCURSOR vagy WM_MOUSEMOVE üzenetet kap egy inaktív objektumra IPointerInactivemutató egérmutatóval, a tárolónak fel kell hívnia GetActivationPolicy a felületet, és vissza kell adnia a POINTERINACTIVE enumerálás jelzőit.

Ezeket az üzeneteket ugyanúgy feldolgozhatja, mint a hagyományos ablaküzeneteket, ha hozzáadja a megfelelő bejegyzéseket az üzenettérképhez. A kezelőkben kerülje a tagváltozó (vagy az m_hWnd azt használó tagfüggvények) használatát anélkül, hogy először ellenőrizné, hogy értéke nem NULL-e.

Minden olyan objektumnak, amely az egérmutató beállításán és/vagy egy egérmozgatási eseményen (például speciális vizuális visszajelzésen) kívül többet kíván tenni, vissza kell adnia a POINTERINACTIVE_ACTIVATEONENTRY jelzőt, és csak aktív állapotban kell visszajelzést küldenie. Ha az objektum visszaadja ezt a jelzőt, a tárolónak azonnal aktiválnia kell, majd továbbítania kell azt az üzenetet, amely a hívást GetActivationPolicyelindította.

Ha a POINTERINACTIVE_ACTIVATEONENTRY és a POINTERINACTIVE_DEACTIVATEONLEAVE jelző is vissza lesz adva, akkor az objektum csak akkor aktiválódik, ha az egér az objektum felett van. Ha csak a POINTERINACTIVE_ACTIVATEONENTRY jelzőt adja vissza, akkor az objektum csak egyszer aktiválódik, amikor az egér először belép az objektumba.

Előfordulhat, hogy azt is szeretné, hogy egy inaktív vezérlőelem legyen az OLE húzási művelet célja. Ehhez aktiválnia kell a vezérlőt abban a pillanatban, amikor a felhasználó áthúz egy objektumot rajta, hogy a vezérlő ablaka regisztrálható legyen dobási célként. Ha a húzás során aktiválást szeretne okozni, adja vissza a POINTERINACTIVE_ACTIVATEONDRAG jelzőt:

DWORD CMyAxCtrl::GetActivationPolicy()
{
   return POINTERINACTIVE_ACTIVATEONDRAG;
}

Az általuk GetActivationPolicy közölt információkat nem szabad tárolóval gyorsítótárazni. Ehelyett ezt a metódust minden alkalommal meg kell hívni, amikor az egér inaktív objektumot ad meg.

Ha egy inaktív objektum nem kéri a helyszíni aktiválást, amikor az egér belép, a tárolónak további WM_SETCURSOR üzeneteket kell küldenie ehhez az objektumhoz az OnInactiveSetCursor meghívásával, amíg az egérmutató az objektum felett marad.

IPointerInactive Az interfész engedélyezése általában azt jelenti, hogy azt szeretné, hogy a vezérlő mindig képes legyen az egérüzenetek feldolgozására. Ha ezt a viselkedést olyan tárolóban szeretné megkapni, amely nem támogatja az IPointerInactive interfészt, mindig aktiválnia kell a vezérlőt, ha látható, ami azt jelenti, hogy a vezérlőnek a OLEMISC_ACTIVATEWHENVISIBLE jelzőt kell a különböző jelzők között lennie. Ha azonban a jelző nem lép érvénybe egy olyan tárolóban, amely támogatja IPointerInactive, megadhatja a OLEMISC_IGNOREACTIVATEWHENVISIBLE jelzőt is:

static const DWORD BASED_CODE _dwMyOleMisc =
    OLEMISC_ACTIVATEWHENVISIBLE |
    OLEMISC_IGNOREACTIVATEWHENVISIBLE |
    OLEMISC_SETCLIENTSITEFIRST |
    OLEMISC_INSIDEOUT |
    OLEMISC_CANTLINKINSIDE |
    OLEMISC_RECOMPOSEONRESIZE;

COleControl::GetAmbientProperty

Lekéri a tároló környezeti tulajdonságának értékét.

BOOL GetAmbientProperty(
    DISPID dispid,
    VARTYPE vtProp,
    void* pvProp);

Paraméterek

dwDispid
A kívánt környezeti tulajdonság feladási azonosítója.

vtProp
A pvProp-ban visszaadandó érték típusát meghatározó változattípuscímke.

pvProp
Mutató annak a változónak a címére, amely megkapja a tulajdonságértéket vagy a visszatérési értéket. A mutató tényleges típusának meg kell egyeznie a vtProp által megadott típussal.

vtProp A pvProp típusa
VT_BOOL BOOL*
VT_BSTR CString*
VT_I2 short*
VT_I4 long*
VT_R4 float*
VT_R8 double*
VT_CY CY*
VT_COLOR OLE_COLOR*
VT_DISPATCH LPDISPATCH*
VT_FONT LPFONTDISP*

Visszaadott érték

Nonzero, ha a környezeti tulajdonság támogatott; egyéb esetben 0.

Megjegyzések

Ha a környezeti DisplayName és ScaleUnits tulajdonságok lekérésére használja GetAmbientProperty , állítsa a vtProp értékét VT_BSTR és pvProp értékre CString*. Ha a környezeti Betűtípus tulajdonságot kéri le, állítsa a vtProp értékét VT_FONT értékre, a pvProp értékét pedig LPFONTDISP*-ra.

Vegye figyelembe, hogy a gyakran használt környezeti tulajdonságok, például az AmbientBackColor és az AmbientFont már rendelkeznek funkciókkal.

COleControl::GetAppearance

Megvalósítja a vezérlő részvény megjelenési tulajdonságának Get függvényét.

short GetAppearance ();

Visszaadott érték

A visszatérési érték az aktuális megjelenési beállítást adja meg (VT_I2) értékként short , ha sikeres. Ez az érték nulla, ha a vezérlő megjelenése lapos, és 1, ha a vezérlő megjelenése 3D.

COleControl::GetBackColor

Implementálja a vezérlő készlet BackColor tulajdonságának Get függvényét.

OLE_COLOR GetBackColor();

Visszaadott érték

A visszatérési érték az aktuális háttérszínt adja meg OLE_COLOR értékként, ha sikeres. Ez az érték egy COLORREF értékre fordítható a hívással TranslateColor.

COleControl::GetBorderStyle

Megvalósítja a vezérlő stock BorderStyle tulajdonságának Get függvényét.

short GetBorderStyle();

Visszaadott érték

1, ha a vezérlő szegélye normál; 0, ha a vezérlőnek nincs szegélye.

COleControl::GetCapture

Meghatározza, hogy az COleControl objektum rendelkezik-e egérrögzítési funkcióval.

CWnd* GetCapture();

Visszaadott érték

Ha a vezérlő aktiválva van és ablak nélküli, akkor akkor adja vissza this , ha a vezérlő jelenleg rendelkezik az egérrögzítéssel (a vezérlő tárolója által meghatározott módon), vagy NULL értéket, ha nem rendelkezik a rögzítéssel.

Ellenkező esetben az CWnd egérrögzítést tartalmazó objektumot adja vissza (ugyanaz, mint CWnd::GetCapture).

Megjegyzések

Az aktivált ablak nélküli vezérlő fogadja az egér rögzítését a SetCapture meghívásakor.

COleControl::GetClassID

A keretrendszer meghívta a vezérlő OLE osztályazonosítójának lekéréséhez.

virtual HRESULT GetClassID(LPCLSID pclsid) = 0;

Paraméterek

pclsid
Mutasson az osztályazonosító helyére.

Visszaadott érték

Nonzero, ha a hívás nem volt sikeres; egyéb esetben 0.

Megjegyzések

Általában a IMPLEMENT_OLECREATE_EX valósítja meg.

COleControl::GetClientOffset

Lekéri a vezérlőelem négyszögletes területének bal felső sarkában és az ügyfélterület bal felső sarkában lévő különbséget.

virtual void GetClientOffset(long* pdxOffset, long* pdyOffset) const;

Paraméterek

pdxOffset
Mutasson az OLE-vezérlő ügyfélterületének vízszintes eltolására.

pdyOffset
Mutasson az OLE-vezérlő ügyfélterületének függőleges eltolására.

Megjegyzések

Az OLE vezérlő négyszögletes területtel rendelkezik a tárolón belül. A vezérlő ügyfélterülete a szegélyek és görgetősávok kivételével a vezérlőterület. A lekért GetClientOffset eltolás a vezérlőelem négyszögletes területének bal felső sarka és az ügyfélterület bal felső sarkának különbsége. Ha a vezérlőelem nem ügyfélelemekkel rendelkezik, a normál szegélyek és görgetősávok kivételével, felülbírálja ezt a tagfüggvényt az eltolás megadásához.

COleControl::GetClientRect

Lekéri a vezérlő ügyfélterületének méretét.

virtual void GetClientRect(LPRECT lpRect) const;

Paraméterek

lpRect
Mutató az RECT ablak nélküli vezérlő ügyfélterületének méreteit tartalmazó szerkezetre, vagyis a vezérlő mérete mínusz ablakszegélyek, keretek, görgetősávok stb. Az lpRect paraméter a vezérlő ügyfél téglalapjának méretét jelzi, nem a pozícióját.

COleControl::GetClientSite

Lekérdez egy objektumot a tárolón belüli aktuális ügyfélwebhelyre mutató mutatóhoz.

LPOLECLIENTSITE GetClientSite();

Visszaadott érték

Mutató a vezérlő aktuális ügyfélwebhelyére a tárolóban.

Megjegyzések

A visszaadott mutató a következő példányra IOleClientSitemutat: . A IOleClientSite tárolók által implementált felület az objektum környezetének nézete: ahol a dokumentum rögzítve van, ahol megkapja a tárterületet, a felhasználói felületet és más erőforrásokat.

COleControl::GetControlFlags

Lekéri a vezérlőjelölő beállításait.

virtual DWORD GetControlFlags();

Visszaadott érték

A ControlFlags enumerálásban szereplő jelölők ORed kombinációja:

enum ControlFlags {
    fastBeginPaint = 0x0001,
    clipPaintDC = 0x0002,
    pointerInactive = 0x0004,
    noFlickerActivate = 0x0008,
    windowlessActivate = 0x0010,
    canOptimizeDraw = 0x0020,
    };

Megjegyzések

Alapértelmezés szerint a GetControlFlags visszaadott érték fastBeginPaint | clipPaintDC.

Név Description
fastBeginPaint Ha be van állítva, a BeginPaint API helyett egy OLE-vezérlőkre szabott begin-paint függvényt használ (alapértelmezés szerint beállítva).
clipPaintDC Ha nincs beállítva, letiltja a meghívást IntersectClipRectCOleControl , és kis sebességelőnyt szerez. Ha ablak nélküli aktiválást használ, a jelölőnek nincs hatása.
pointerInactive Ha be van állítva, akkor a vezérlő inaktív állapotban lévő egér-interakciót biztosít az alapértelmezett letiltott COleControlfelület implementálásának IPointerInactive engedélyezésével.
noFlickerActivate Ha be van állítva, megszünteti a további rajzműveleteket és a hozzá tartozó vizuális villódzást. Akkor használható, ha a vezérlő azonos módon rajzolja meg magát inaktív és aktív állapotokban. Ha ablak nélküli aktiválást használ, a jelölőnek nincs hatása.
windowlessActivate Ha be van állítva, azt jelzi, hogy a vezérlő ablak nélküli aktiválást használ.
canOptimizeDraw Ha be van állítva, azt jelzi, hogy a vezérlő optimalizált rajzot fog végrehajtani, ha a tároló támogatja.

További információ az OLE-vezérlőkről és más optimalizálásokról GetControlFlags : ActiveX-vezérlők: Optimalizálás.

COleControl::GetControlSize

Lekéri az OLE vezérlőablak méretét.

void GetControlSize(
    int* pcx,
    int* pcy);

Paraméterek

Pcx
A vezérlőelem szélességét képpontban adja meg.

pcy
A vezérlőelem magasságát adja meg képpontban.

Megjegyzések

Vegye figyelembe, hogy a vezérlőablakok összes koordinátája a vezérlőelem bal felső sarkához viszonyítva van.

COleControl::GetDC

Lehetővé teszi, hogy egy ablak nélküli objektum lekérjen egy képernyős (vagy kompatibilis) eszközkörnyezetet a tárolóból.

CDC* GetDC(
    LPCRECT lprcRect = NULL,
    DWORD dwFlags = OLEDC_PAINTBKGND);

Paraméterek

lprcRect
Az ablak nélküli vezérlő újrarajzolni kívánt téglalapjára mutató mutató a vezérlő ügyfélkoordinátáiban. A NULL a teljes objektum kiterjedése.

dwFlags
Az eszközkörnyezet rajzattribútumai. A lehetőségek a következők:

  • OLEDC_NODRAW Azt jelzi, hogy az objektum nem használja az eszközkörnyezetet rajzok végrehajtására, csak a megjelenítési eszközre vonatkozó információk lekérésére. A tárolónak egyszerűen át kell haladnia az ablak tartományvezérlője mellett további feldolgozás nélkül.

  • OLEDC_PAINTBKGND kéri, hogy a tároló festse le a hátteret, mielőtt visszaadja a tartományvezérlőt. Egy objektumnak ezt a jelzőt kell használnia, ha egy tartományvezérlőt kér egy áttetsző háttérrel rendelkező terület újrarajzolásához.

  • OLEDC_OFFSCREEN Tájékoztatja a tárolót, hogy az objektum egy képernyőn kívüli bitképet szeretne megjeleníteni, amelyet ezután a képernyőre kell másolni. Egy objektumnak ezt a jelzőt kell használnia, amikor az éppen végrehajtandó rajzművelet sok villódzást okoz. A tároló szabadon tiszteletben tarthatja ezt a kérést, vagy sem. Ha azonban ez a jelző nincs beállítva, a tárolónak vissza kell adnia egy képernyős tartományvezérlőt. Ez lehetővé teszi az objektumok számára a közvetlen képernyőműveleteket, például a kijelölés megjelenítését ( XOR-műveleten keresztül).

Visszaadott érték

Ha sikeres, mutasson a tárolóügyfél CWnd területének megjelenítési eszközkörnyezetére; ellenkező esetben a visszatérési érték NULL. A megjelenítési eszköz környezete használható a későbbi GDI-függvényekben a tároló ablakának ügyfélterületén való rajzoláshoz.

Megjegyzések

A ReleaseDC tagfüggvényt meg kell hívni a környezet festés utáni kiadásához. Híváskor GetDCaz objektumok a saját ügyfélkoordinátáikban átengedik azt a téglalapot, amelybe be szeretnének rajzolni. GetDC ezeket a tárolóügyfél-terület koordinátáira fordítja le. Az objektumnak nem szabad a saját ügyfélterület-téglalapjánál nagyobb rajz téglalapot kérnie, amelynek mérete a GetClientRect használatával kérhető le. Ez megakadályozza, hogy az objektumok véletlenül oda rajzoljanak, ahol nem kellene.

COleControl::GetEnabled

Implementálja a vezérlő részvény-kompatibilis tulajdonságának Get függvényét.

BOOL GetEnabled();

Visszaadott érték

Nonzero, ha a vezérlő engedélyezve van; egyéb esetben 0.

COleControl::GetExtendedControl

A tároló által karbantartott objektumra mutató mutatót kap, amely kiterjesztett tulajdonságokkal rendelkező vezérlőt jelöl.

LPDISPATCH GetExtendedControl();

Visszaadott érték

Mutató a tároló kiterjesztett vezérlőobjektumára. Ha nincs elérhető objektum, az érték NULL.

Ezt az objektumot a kezelőfelületén IDispatch keresztül lehet manipulálni. Az objektum által biztosított egyéb elérhető felületek beszerzésére is használható QueryInterface . Az objektum azonban nem szükséges egy adott illesztőkészlet támogatásához. Vegye figyelembe, hogy a tároló kiterjesztett vezérlőobjektumának adott jellemzőire támaszkodva korlátozza a vezérlő hordozhatóságát más tetszőleges tárolókra.

Megjegyzések

A függvényt meghívó függvény felelős az egérmutató felszabadításáért, ha elkészült az objektummal. Vegye figyelembe, hogy a tároló nem szükséges az objektum támogatásához.

COleControl::GetFocus

Meghatározza, hogy az COleControl objektumon van-e a fókusz.

CWnd* GetFocus();

Visszaadott érték

Ha a vezérlő aktiválva van és ablak nélkül van, akkor azt adja vissza this , ha a vezérlő jelenleg a billentyűzetfókuszt (a vezérlő tárolója határozza meg), vagy NULL értéket, ha nincs fókusza.

Ellenkező esetben a CWnd fókuszt tartalmazó objektumot adja vissza (ugyanaz, mint CWnd::GetFocus).

Megjegyzések

Az aktivált ablak nélküli vezérlők a SetFocus meghívásakor kapják meg a fókuszt.

COleControl::GetFont

A stock Font tulajdonság Get függvényét implementálja.

LPFONTDISP GetFont();

Visszaadott érték

Mutató a vezérlő készlet Font tulajdonságának betűküldési felületére.

Megjegyzések

Vegye figyelembe, hogy a hívónak fel kell szabadítania az objektumot, ha elkészült. A vezérlő implementálásán belül használja InternalGetFont a vezérlő készlet font objektumának elérését. A betűtípusok vezérlőelemben való használatáról az ActiveX-vezérlők: Betűtípusok használata ActiveX-vezérlőkben című cikkben talál további információt.

COleControl::GetFontTextMetrics

A vezérlőelem tulajdonában lévő objektumok CFontHolder szöveges metrikáit méri.

void GetFontTextMetrics(
    LPTEXTMETRIC lptm,
    CFontHolder& fontHolder);

Paraméterek

lptm
Mutató egy TEXTMETRIC szerkezetre.

fontHolder
Hivatkozás CFontHolder objektumra.

Megjegyzések

Egy ilyen betűtípus a COleControl::SelectFontObject függvénnyel választható ki. GetFontTextMetrics inicializálja az TEXTMETRIClptm által mutatott struktúrát érvényes metrikák adataival a betűtípusról fontHolder, ha sikeres, vagy kitölti a szerkezetet nullákkal, ha nem sikerül. Ezt a függvényt a GetTextMetrics helyett érdemes használnia a vezérlőelemek festése során, mert a vezérlők, mint bármely beágyazott OLE objektum, szükség lehet arra, hogy metafájlba rendereljék magukat.

Az TEXTMETRIC alapértelmezett betűtípus struktúrája a SelectFontObject függvény meghívásakor frissül. Csak a stock Font tulajdonság kiválasztása után hívjon GetFontTextMetrics fel, hogy az általa megadott információk érvényesek legyenek.

COleControl::GetForeColor

Implementálja a ForeColor tulajdonság Get függvényét.

OLE_COLOR GetForeColor();

Visszaadott érték

A visszatérési érték az aktuális előtérszínt adja meg OLE_COLOR értékként, ha sikeres. Ez az érték egy COLORREF értékre fordítható a hívással TranslateColor.

COleControl::GetHwnd

Implementálja a hWnd részvénytulajdonság Get függvényét.

OLE_HANDLE GetHwnd();

Visszaadott érték

Az OLE vezérlő ablakfogópontja, ha van ilyen; ellenkező esetben NULL.

COleControl::GetMessageString

A keretrendszer meghívta egy rövid sztring beszerzésére, amely leírja az nID által azonosított menüelem célját.

virtual void GetMessageString(
    UINT nID,
    CString& rMessage) const;

Paraméterek

nID
Egy menüelem azonosítója.

rMessage
Hivatkozás egy CString objektumra, amelyen keresztül egy sztring lesz visszaadva.

Megjegyzések

Ez az állapotsoron megjelenítendő üzenet lekérésére használható, miközben a menüelem ki van emelve. Az alapértelmezett implementáció megkísérli betölteni az nID által azonosított sztringerőforrást.

COleControl::GetNotSupported

Megakadályozza, hogy a felhasználó hozzáférjen egy vezérlő tulajdonságértékéhez.

void GetNotSupported();

Megjegyzések

Hívja meg ezt a függvényt bármely olyan tulajdonság Get függvénye helyett, ahol a tulajdonságnak a vezérlő felhasználója általi lekérése nem támogatott. Ilyen lehet például egy csak írásra szolgáló tulajdonság.

COleControl::GetReadyState

A vezérlőelem készültségi állapotát adja vissza.

long GetReadyState();

Visszaadott érték

A vezérlő készültségi állapota, az alábbi értékek egyike:

Név Description
READYSTATE_UNINITIALIZED Alapértelmezett inicializálási állapot
READYSTATE_LOADING A vezérlő jelenleg betölti a tulajdonságait
READYSTATE_LOADED A vezérlő inicializálva lett
READYSTATE_INTERACTIVE A vezérlő rendelkezik elegendő adatval az interaktív működéshez, de még nem minden aszinkron adat van betöltve
READYSTATE_COMPLETE A vezérlő minden adatával rendelkezik

Megjegyzések

A legegyszerűbb vezérlőknek soha nem kell különbséget tenniük a LOADED és az INTERACTIVE között. Előfordulhat azonban, hogy az adatútvonal-tulajdonságokat támogató vezérlők nem lesznek interaktívak, amíg legalább néhány adat aszinkron módon nem érkezik meg. Egy vezérlőnek a lehető leghamarabb meg kell kísérelnie az interaktívsá válást.

COleControl::GetRectInContainer

Lekérte a vezérlő téglalapjának koordinátáit a tárolóhoz viszonyítva, eszközegységekben kifejezve.

BOOL GetRectInContainer(LPRECT lpRect);

Paraméterek

lpRect
Egy mutató arra a téglalapszerkezetre, amelybe a vezérlő koordinátáit másolni fogja.

Visszaadott érték

Nonzero, ha a vezérlő helyben aktív; egyéb esetben 0.

Megjegyzések

A téglalap csak akkor érvényes, ha a vezérlő helyben aktív.

COleControl::GetStockTextMetrics

A vezérlőelem stock Font tulajdonságának szöveges metrikáit méri, amely a SelectStockFont függvénnyel választható ki.

void GetStockTextMetrics(LPTEXTMETRIC lptm);

Paraméterek

lptm
Mutató egy TEXTMETRIC-struktúrára .

Megjegyzések

A GetStockTextMetrics függvény inicializálja az TEXTMETRIClptm által mutatott struktúrát érvényes metrikák adataival, ha sikeres, vagy kitölti a struktúrát nullákkal, ha nem sikerül. Használja ezt a függvényt a GetTextMetrics helyett a vezérlő festésekor, mert a vezérlők, mint bármely beágyazott OLE-objektum, szükség lehet arra, hogy metafájlba rendereljék magukat.

Az TEXTMETRIC alapértelmezett betűtípus struktúrája a függvény meghívásakor SelectStockFont frissül. Ezt a függvényt csak a készlet betűtípusának kiválasztása után kell meghívnia, hogy a megadott információ érvényes legyen.

COleControl::GetText

A stock Text vagy Caption tulajdonság Get függvényét implementálja.

BSTR GetText();

Visszaadott érték

A vezérlőszöveg-sztring aktuális értéke vagy nulla hosszúságú karakterlánc, ha nincs sztring.

Megjegyzés:

A BSTR-adattípussal kapcsolatos további információkért lásd a Makrók és a Globálisak szakaszban található adattípusokat .

Megjegyzések

Vegye figyelembe, hogy a függvény hívójának a visszaadott sztringre kell hívnia SysFreeString az erőforrás felszabadításához. A vezérlő implementálásán belül használja InternalGetText a vezérlő Stock Text vagy Caption tulajdonságának elérését.

COleControl::GetWindowlessDropTarget

Felülbírálás GetWindowlessDropTarget , ha azt szeretné, hogy egy ablak nélküli vezérlő legyen az OLE húzási művelet célja.

virtual IDropTarget* GetWindowlessDropTarget();

Visszaadott érték

Mutasson az objektum felületére IDropTarget . Mivel nincs ablaka, az ablak nélküli objektumok nem regisztrálhatnak IDropTarget felületet. A húzásban való részvételhez azonban az ablak nélküli objektumok továbbra is implementálhatják a felületet, és visszaadhatják a következőben GetWindowlessDropTarget: .

Megjegyzések

Ez általában azt követeli meg, hogy a vezérlő ablaka drop targetként legyen regisztrálva. Mivel azonban a vezérlőnek nincs saját ablaka, a tároló a saját ablakát fogja használni dobási célként. A vezérlőnek egyszerűen meg kell adnia annak a felületnek a IDropTarget megvalósítását, amelyre a tároló a megfelelő időben delegálhat hívásokat. Például:

IDropTarget *CMyAxCtrl::GetWindowlessDropTarget()
{
   m_xDropTarget.AddRef();
   return &m_xDropTarget;
}

COleControl::InitializeIIIDs

Tájékoztatja a vezérlő által használt IID-k alaposztályát.

void InitializeIIDs(
    const IID* piidPrimary,
    const IID* piidEvents);

Paraméterek

piidPrimary
Mutasson a vezérlő elsődleges diszpécserfelületének felületazonosítójára.

piidEvents
Mutasson a vezérlő eseményfelületének felületazonosítójára.

Megjegyzések

Hívja meg ezt a függvényt a vezérlő konstruktorában, hogy tájékoztassa a vezérlő által használt interfészazonosítók alaposztályát.

COleControl::InternalGetFont

Hozzáférés a vezérlőelem részvény Betűtípus tulajdonságához

CFontHolder& InternalGetFont();

Visszaadott érték

Hivatkozás a stock Font objektumot tartalmazó CFontHolder objektumra.

COleControl::InternalGetText

A vezérlőelem készletszöveg- vagy felirattulajdonságához fér hozzá.

const CString& InternalGetText();

Visszaadott érték

Hivatkozás a vezérlőszöveg-sztringre.

COleControl::InternalSetReadyState

Beállítja a vezérlő készültségi állapotát.

void InternalSetReadyState(long lNewReadyState);

Paraméterek

lNewReadyState
A vezérlőelemhez beállított készültségi állapot, az alábbi értékek egyike:

Név Description
READYSTATE_UNINITIALIZED Alapértelmezett inicializálási állapot
READYSTATE_LOADING A vezérlő jelenleg betölti a tulajdonságait
READYSTATE_LOADED A vezérlő inicializálva lett
READYSTATE_INTERACTIVE A vezérlő rendelkezik elegendő adatval az interaktív működéshez, de még nem minden aszinkron adat van betöltve
READYSTATE_COMPLETE A vezérlő minden adatával rendelkezik

Megjegyzések

A legegyszerűbb vezérlőknek soha nem kell különbséget tenniük a LOADED és az INTERACTIVE között. Előfordulhat azonban, hogy az adatútvonal-tulajdonságokat támogató vezérlők nem lesznek interaktívak, amíg legalább néhány adat aszinkron módon nem érkezik meg. Egy vezérlőnek a lehető leghamarabb meg kell kísérelnie az interaktívsá válást.

COleControl::InvalidateControl

Kényszeríti a vezérlőt, hogy újrarajzolva magát.

void InvalidateControl(
    LPCRECT lpRect = NULL,
    BOOL bErase = TRUE);

Paraméterek

lpRect
Az érvénytelenítendő vezérlőelem régiójára mutató mutató.

bErase
Megadja, hogy a frissítési régióban lévő háttér törölve legyen-e a frissítési régió feldolgozásakor.

Megjegyzések

Ha az lpRect null értékű, a teljes vezérlő újra lesz adva. Ha az lpRect értéke nem NULL, az a vezérlőelem téglalapjának érvénytelenítendő részét jelzi. Azokban az esetekben, amikor a vezérlőnek nincs ablaka, vagy jelenleg nem aktív, a téglalap figyelmen kívül lesz hagyva, és hívást kezdeményez az ügyfélwebhely IAdviseSink::OnViewChange tagfüggvényére. Használja ezt a függvényt ahelyett CWnd::InvalidateRect vagy InvalidateRect.

COleControl::InvalidateRgn

Érvényteleníti a tárolóablak ügyfélterületét az adott régión belül.

void InvalidateRgn(CRgn* pRgn, BOOL bErase = TRUE);

Paraméterek

pRgn
Egy CRgn-objektumra mutató mutató, amely azonosítja az érvénytelenítendő OLE objektum megjelenítési régióját a tartalmazó ablak ügyfélkoordinátáiban. Ha ez a paraméter NULL, akkor a mérték a teljes objektum.

bErase
Megadja, hogy az érvénytelenített régióban lévő háttér törölve legyen-e. Ha IGAZ, a háttér törlődik. Ha HAMIS, a háttér változatlan marad.

Megjegyzések

Ez a tároló ablak nélküli vezérlőinek újrarajzzására használható. Az érvénytelenített régió és a frissítési régió összes többi területe festésre van megjelölve a következő WM_PAINT üzenet elküldésekor.

Ha a bErase értéke IGAZ a frissítési régió bármely részére vonatkozóan, a rendszer törli a teljes régió hátterét, nem csak az adott részben.

COleControl::IsConvertingVBX

Lehetővé teszi az OLE-vezérlők speciális betöltését.

BOOL IsConvertingVBX();

Visszaadott érték

Nemzero, ha a vezérlő konvertálása folyamatban van; egyéb esetben 0.

Megjegyzések

VBX-vezérlőket használó űrlap OLE-vezérlőket használóvá alakításakor szükség lehet speciális betöltési kódra az OLE-vezérlőkhöz. Ha például az OLE-vezérlő egy példányát tölti be, előfordulhat, hogy a következőben PX_FontDoPropExchange:

PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);

A VBX-vezérlők azonban nem rendelkeztek Betűtípus-objektummal; minden egyes betűtípustulajdonság külön lett mentve. Ebben az esetben az alábbi két esetet érdemes IsConvertingVBX megkülönböztetni:

if (!IsConvertingVBX())
{
   PX_Font(pPX, _T("Font"), *m_pMyFont, &DefaultFont);
}
else
{
   PX_String(pPX, _T("FontName"), tempString, DefaultName);
   m_pMyFont->m_pFont->put_Name(tempString.AllocSysString());
   PX_Bool(pPX, _T("FontUnderline"), tempBool, DefaultValue);
   m_pMyFont->m_pFont->put_Underline(tempBool);
}

Egy másik eset az lenne, ha a VBX-vezérlő védett bináris adatokat mentett (VBM_SAVEPROPERTY üzenetkezelőjében), és az OLE-vezérlő más formátumban menti a bináris adatokat. Ha azt szeretné, hogy az OLE-vezérlő visszamenőlegesen kompatibilis legyen a VBX-vezérlővel, akkor a függvény használatával IsConvertingVBX elolvashatja a régi és az új formátumokat is, ha meg szeretné különböztetni, hogy a VBX-vezérlő vagy az OLE vezérlő be van-e töltve.

A vezérlő függvényében DoPropExchange ellenőrizheti ezt a feltételt, és ha igaz, végrehajthatja az átalakításra vonatkozó terhelési kódot (például az előző példákat). Ha a vezérlőt nem konvertálja, végrehajthatja a normál terhelési kódot. Ez a képesség csak a VBX-megfelelőkből konvertált vezérlőkre vonatkozik.

COleControl::IsInvokeAllowed

Automatizálási metódus meghívását teszi lehetővé.

BOOL IsInvokeAllowed(DISPID dispid);

Visszaadott érték

Nonzero, ha a vezérlő inicializálva van; egyéb esetben 0.

Megjegyzések

A keretrendszer hívásainak IDispatch::InvokeIsInvokeAllowed végrehajtása annak megállapítására, hogy egy adott függvény (azonosította dispid) meghívható-e. Az OLE-vezérlők alapértelmezett viselkedése az automatizálási módszerek meghívásának engedélyezése csak akkor, ha a vezérlő inicializálva van; azonban egy virtuális függvény, IsInvokeAllowed és szükség esetén felül lehet bírálni (például amikor a vezérlőt automatizálási kiszolgálóként használják).

COleControl::IsModified

Meghatározza, hogy a vezérlő állapota módosult-e.

BOOL IsModified();

Visszaadott érték

Nonzero, ha a vezérlő állapota a legutóbbi mentés óta módosult; egyéb esetben 0.

Megjegyzések

A vezérlőelem állapota akkor módosul, amikor egy tulajdonság módosítja az értéket.

COleControl::IsOptimizedDraw

Meghatározza, hogy a tároló támogatja-e az aktuális rajzművelethez optimalizált rajzot.

BOOL IsOptimizedDraw();

Visszaadott érték

IGAZ, ha a tároló támogatja az aktuális rajzművelethez optimalizált rajzot; egyéb esetben HAMIS.

Megjegyzések

Ha az optimalizált rajz támogatott, akkor a vezérlőnek nem kell régi objektumokat (tollakat, ecseteket, betűtípusokat stb.) kijelölnie az eszköz környezetébe a rajz befejezésekor.

COleControl::IsSubclassedControl

A keretrendszer meghívta, hogy megállapítsa, hogy a vezérlő egy Windows-vezérlő alosztálya-e.

virtual BOOL IsSubclassedControl();

Visszaadott érték

Nonzero, ha a vezérlő alosztályozott; egyéb esetben 0.

Megjegyzések

Felül kell bírálnia ezt a függvényt, és igaz értéket kell visszaadnia, ha az OLE-vezérlő egy Windows-vezérlő alosztályát sorolja be.

COleControl::Load

Alaphelyzetbe állítja az aszinkron módon betöltött korábbi adatokat, és kezdeményezi a vezérlő aszinkron tulajdonságának új betöltését.

void Load(LPCTSTR strNewPath, CDataPathProperty& prop);

Paraméterek

strNewPath
Az aszinkron vezérlőtulajdonság abszolút helyére hivatkozó elérési utat tartalmazó sztringre mutató mutató.

Prop
A Aszinkron vezérlőtulajdonságot implementáló CDataPathProperty objektum.

COleControl::LockInPlaceActive

Megakadályozza, hogy a tároló inaktiválja a vezérlőt.

BOOL LockInPlaceActive(BOOL bLock);

Paraméterek

Blokk
IGAZ, ha a vezérlő helyi aktív állapota zárolva van; HAMIS, ha fel kell oldani.

Visszaadott érték

Nonzero, ha a zárolás sikeres volt; egyéb esetben 0.

Megjegyzések

Vegye figyelembe, hogy a vezérlő minden zárolását párosítani kell a vezérlő zárolásának feloldásával, ha elkészült. A vezérlőt csak rövid ideig kell zárolnia, például egy esemény kilövése közben.

COleControl::OnAmbientPropertyChange

A keretrendszer meghívja, amikor a tároló környezeti tulajdonsága megváltozott.

virtual void OnAmbientPropertyChange(DISPID dispid);

Paraméterek

dispID
A módosult környezeti tulajdonság feladóazonosítója, vagy ha több tulajdonság módosult, DISPID_UNKNOWN.

COleControl::OnAppearanceChanged

A keretrendszer meghívta, amikor a tőzsdei Megjelenés tulajdonság értéke megváltozott.

virtual void OnAppearanceChanged ();

Megjegyzések

Bírálja felül ezt a függvényt, ha értesítést szeretne kapni a tulajdonság módosítása után. Az alapértelmezett megvalósítási hívások InvalidateControl.

COleControl::OnBackColorChanged

A keretrendszer meghívta, amikor a készlet BackColor tulajdonságértéke megváltozott.

virtual void OnBackColorChanged();

Megjegyzések

Bírálja felül ezt a függvényt, ha értesítést szeretne kapni a tulajdonság módosítása után. Az alapértelmezett megvalósítási hívások InvalidateControl.

COleControl::OnBorderStyleChanged

A keretrendszer meghívta, amikor a stock BorderStyle tulajdonság értéke megváltozott.

virtual void OnBorderStyleChanged();

Megjegyzések

Az alapértelmezett megvalósítási hívások InvalidateControl.

Bírálja felül ezt a függvényt, ha értesítést szeretne kapni a tulajdonság módosítása után.

COleControl::OnClick

A keretrendszer meghívta, amikor egy egérgombra kattintott, vagy a DoClick részvénymetódus meghívása megtörtént.

virtual void OnClick(USHORT iButton);

Paraméterek

iButton
Egérgomb indexe. Az alábbi értékek egyikével rendelkezhet:

  • LEFT_BUTTON A bal egérgombra kattintott.

  • MIDDLE_BUTTON A középső egérgombra kattintott.

  • RIGHT_BUTTON A jobb egérgombra kattintott.

Megjegyzések

Az alapértelmezett megvalósítási hívások COleControl::FireClick.

A tagfüggvény felülbírálása az alapértelmezett kezelés módosításához vagy kiterjesztéséhez.

COleControl::OnClose

A keretrendszer meghívja, amikor a tároló meghívta a vezérlő függvényét IOleControl::Close .

virtual void OnClose(DWORD dwSaveOption);

Paraméterek

dwSaveOption
Jelölő, amely jelzi, hogy az objektumot a betöltés előtt menteni kell-e. Az érvényes értékek a következők:

  • OLECLOSE_SAVEIFDIRTY

  • OLECLOSE_NOSAVE

  • OLECLOSE_PROMPTSAVE

Megjegyzések

Alapértelmezés szerint menti a vezérlőobjektumot, OnClose ha módosították, és a dwSaveOption OLECLOSE_SAVEIFDIRTY vagy OLECLOSE_PROMPTSAVE.

COleControl::OnDoVerb

A keretrendszer meghívja, amikor a tároló meghívja a tagfüggvényt IOleObject::DoVerb .

virtual BOOL OnDoVerb(
    LONG iVerb,
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Paraméterek

iVerb
A meghívandó vezérlő ige indexe.

lpMsg
Az ige meghívását okozó Windows-üzenetre mutató mutató.

hWndParent
A vezérlő szülőablakának fogópontja. Ha az ige végrehajtása létrehoz egy ablakot (vagy ablakot), a hWndParent függvényt kell használni szülőként.

lpRect
Egy RECT-struktúra mutatója, amelybe a vezérlő koordinátái a tárolóhoz viszonyítva lesznek másolva.

Visszaadott érték

Nonzero, ha a hívás sikeres volt; egyéb esetben 0.

Megjegyzések

Az alapértelmezett implementáció a ON_OLEVERB és ON_STDOLEVERB üzenettérkép bejegyzéseit használja a megfelelő meghívandó függvény meghatározásához.

A függvény felülbírálása az ige alapértelmezett kezelésének módosításához.

COleControl::OnDraw

A keretrendszer meghívja az OLE-vezérlőt a megadott határolókeretbe a megadott eszközkörnyezet használatával.

virtual void OnDraw(
    CDC* pDC,
    const CRect& rcBounds,
    const CRect& rcInvalid);

Paraméterek

Pdc
Az eszközkörnyezet, amelyben a rajz történik.

rcBounds
A vezérlő téglalap alakú területe, beleértve a szegélyt is.

rcInvalid
Érvénytelen vezérlőelem téglalap alakú területe.

Megjegyzések

OnDraw általában képernyőmegjelenítésre hívjuk, és pDC-ként ad át egy képernyőeszköz-környezetet. Az rcBounds paraméter azonosítja a téglalapot a céleszköz környezetében (az aktuális leképezési módhoz képest). Az rcInvalid paraméter a tényleges téglalap, amely érvénytelen. Bizonyos esetekben ez kisebb terület lesz, mint az rcBounds.

COleControl::OnDrawMetafile

A keretrendszer meghívta az OLE-vezérlőt a megadott határolókeretben a megadott metafájl-eszközkörnyezet használatával.

virtual void OnDrawMetafile(
    CDC* pDC,
    const CRect& rcBounds);

Paraméterek

Pdc
Az eszközkörnyezet, amelyben a rajz történik.

rcBounds
A vezérlő téglalap alakú területe, beleértve a szegélyt is.

Megjegyzések

Az alapértelmezett implementáció meghívja az OnDraw függvényt .

COleControl::OnEdit

A vezérlő felhasználói felületének aktiválását okozza.

virtual BOOL OnEdit(
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Paraméterek

lpMsg
Az igét meghívó Windows-üzenetre mutató mutató.

hWndParent
A vezérlő szülőablakának fogópontja.

lpRect
A tároló vezérlőeleme által használt téglalapra mutató mutató.

Visszaadott érték

Nonzero, ha a hívás sikeres; egyéb esetben 0.

Megjegyzések

Ennek ugyanaz a hatása, mint a vezérlő OLEIVERB_UIACTIVATE ige meghívásának.

Ezt a függvényt általában egy ON_OLEVERB üzenetleképező bejegyzés kezelőfüggvényeként használják. Ez egy "Szerkesztés" igét tesz elérhetővé a vezérlő "Objektum" menüjében. Például:

ON_OLEVERB(AFX_IDS_VERB_EDIT, OnEdit)

COleControl::OnEnabledChanged

A keretrendszer meghívta, amikor a készlet engedélyezett tulajdonságértéke megváltozott.

virtual void OnEnabledChanged();

Megjegyzések

Bírálja felül ezt a függvényt, ha értesítést szeretne kapni a tulajdonság módosítása után. Az alapértelmezett implementáció az InvalidateControlt hívja meg.

COleControl::OnEnumVerbs

A keretrendszer meghívja, amikor a tároló meghívja a tagfüggvényt IOleObject::EnumVerbs .

virtual BOOL OnEnumVerbs(LPENUMOLEVERB* ppenumOleVerb);

Paraméterek

ppenumOleVerb
A vezérlő igéit számba adó objektumra mutató mutató IEnumOLEVERB .

Visszaadott érték

Nemzero, ha az igék elérhetők; egyéb esetben 0.

Megjegyzések

Az alapértelmezett implementáció az üzenettérkép ON_OLEVERB bejegyzéseit sorolja fel.

A függvény felülbírálása az igék számbavételének alapértelmezett módjának módosításához.

COleControl::OnEventAdvise

A keretrendszer meghívja, ha egy eseménykezelő csatlakozik vagy leválasztott egy OLE-vezérlőt.

virtual void OnEventAdvise(BOOL bAdvise);

Paraméterek

bAdvise
A TRUE azt jelzi, hogy egy eseménykezelő csatlakozott a vezérlőhöz. A HAMIS azt jelzi, hogy egy eseménykezelő le lett választva a vezérlőről.

COleControl::OnFontChanged

A keretrendszer meghívta, amikor a tőzsdei Betűtípus tulajdonság értéke megváltozott.

virtual void OnFontChanged();

Megjegyzések

Az alapértelmezett megvalósítási hívások COleControl::InvalidateControl. Ha a vezérlő egy Windows-vezérlőt alosztályozza, az alapértelmezett implementáció WM_SETFONT üzenetet is küld a vezérlő ablakának.

Bírálja felül ezt a függvényt, ha értesítést szeretne kapni a tulajdonság módosítása után.

Example

void CMyAxCtrl::OnFontChanged()
{
   // Always set it to the container's font
   if (m_MyEdit.m_hWnd != NULL)
   {
      IFontDisp *pFontDisp = NULL;
      IFont *pFont = NULL;
      HRESULT hr;

      // Get the container's FontDisp interface
      pFontDisp = AmbientFont();
      if (pFontDisp)
      {
         hr = pFontDisp->QueryInterface(IID_IFont, (LPVOID*)&pFont);
         if (FAILED(hr))
         {
            pFontDisp->Release();
            return;
         }
      }

      HFONT hFont = NULL;
      if (pFont)
      {
         pFont->get_hFont(&hFont);
         m_MyEdit.SendMessage(WM_SETFONT, (WPARAM)hFont, 0L);
      }

      pFontDisp->Release();
   }

   // Invalidate the control
   m_MyEdit.Invalidate();
   m_MyEdit.UpdateWindow();

   COleControl::OnFontChanged();
}

COleControl::OnForeColorChanged

A keretrendszer meghívta, amikor az állomány ForeColor tulajdonságértéke megváltozott.

virtual void OnForeColorChanged();

Megjegyzések

Az alapértelmezett megvalósítási hívások InvalidateControl.

Bírálja felül ezt a függvényt, ha értesítést szeretne kapni a tulajdonság módosítása után.

COleControl::OnFreezeEvents

A keretrendszer meghívta a tárolóhívások IOleControl::FreezeEventsután.

virtual void OnFreezeEvents(BOOL bFreeze);

Paraméterek

bFreeze
IGAZ, ha a vezérlő eseménykezelése le van fagyasztva; egyéb esetben HAMIS.

Megjegyzések

Az alapértelmezett implementáció nem végez semmit.

Bírálja felül ezt a függvényt, ha további viselkedést szeretne, ha az eseménykezelés le van fagyasztva vagy feloldva.

COleControl::OnGetColorSet

A keretrendszer meghívja, amikor a tároló meghívja a tagfüggvényt IViewObject::GetColorSet .

virtual BOOL OnGetColorSet(
    DVTARGETDEVICE* ptd,
    HDC hicTargetDev,
    LPLOGPALETTE* ppColorSet);

Paraméterek

ptd
Arra a céleszközre mutat, amelyhez a képet renderelni kell. Ha ez az érték NULL, akkor a képet egy alapértelmezett céleszközhöz, általában egy megjelenítési eszközhöz kell renderelni.

hicTargetDev
Megadja a ptd által jelzett céleszköz információs környezetét. Ez a paraméter lehet eszközkörnyezet, de nem feltétlenül. Ha a ptd értéke NULL, akkor a hicTargetDev értéknek is NULL értékűnek kell lennie.

ppColorSet
Egy mutató arra a helyre, ahová a használni kívánt színkészletet ki kell másolni. Ha a függvény nem adja vissza a színkészletet, a null értéket adja vissza.

Visszaadott érték

Érvénytelen, ha érvényes színkészletet ad vissza; egyéb esetben 0.

Megjegyzések

A tároló meghívja ezt a függvényt, hogy lekérjük az OLE-vezérlő rajzolásához szükséges összes színt. A tároló a teljes színpaletta beállításához szükséges színekkel együtt használhatja a kapott színkészleteket. Az alapértelmezett implementáció HAMIS értéket ad vissza.

Felülbírálja ezt a függvényt a kérés bármilyen speciális feldolgozásához.

COleControl::OnGetControlInfo

A keretrendszer meghívta, amikor a vezérlő tárolója információt kért a vezérlőről.

virtual void OnGetControlInfo(LPCONTROLINFO pControlInfo);

Paraméterek

pControlInfo
Mutató egy kitöltendő CONTROLINFO-struktúrára .

Megjegyzések

Ez az információ elsősorban a vezérlő mnemonikus kulcsainak leírását tartalmazza. Az alapértelmezett implementáció kitölti a pControlInfo-t az alapértelmezett információkkal.

Bírálja felül ezt a függvényt, ha a vezérlőnek mnemonikus kulcsokat kell feldolgoznia.

COleControl::OnGetDisplayString

A keretrendszer meghívta egy sztring beszerzésére, amely a dispid által azonosított tulajdonság aktuális értékét jelöli.

virtual BOOL OnGetDisplayString(
    DISPID dispid,
    CString& strValue);

Paraméterek

dispid
A vezérlő valamely tulajdonságának feladóazonosítója.

strValue
Hivatkozás egy CString objektumra, amelyen keresztül egy sztring lesz visszaadva.

Visszaadott érték

Nemzero, ha sztringet ad vissza a strValue; egyébként 0.

Megjegyzések

Bírálja felül ezt a függvényt, ha a vezérlő olyan tulajdonságot tartalmaz, amelynek értéke nem konvertálható közvetlenül sztringgé, és azt szeretné, hogy a tulajdonság értéke megjelenjen egy tároló által biztosított tulajdonságböngészőben.

COleControl::OnGetInPlaceMenu

A keretrendszer meghívta, amikor a vezérlő felhasználói felülete aktiválva van, hogy lekérjük a tároló meglévő menüjébe egyesítendő menüt.

virtual HMENU OnGetInPlaceMenu();

Visszaadott érték

A vezérlő menüjének fogópontja, vagy NULL, ha a vezérlő nem rendelkezik ilyen értékkel. Az alapértelmezett implementáció null értéket ad vissza.

Megjegyzések

Az OLE-erőforrások egyesítéséről további információt a Menük és erőforrások (OLE) című cikkben talál.

COleControl::OnGetNaturalExtent

A keretrendszer meghívta egy tároló kérésére IViewObjectEx::GetNaturalExtent válaszul.

virtual BOOL OnGetNaturalExtent(
    DWORD dwAspect,
    LONG lindex,
    DVTARGETDEVICE* ptd,
    HDC hicTargetDev,
    DVEXTENTINFO* pExtentInfo,
    LPSIZEL psizel);

Paraméterek

dwAspect
Megadja, hogy az objektum hogyan legyen ábrázolva. Az ábrázolások közé tartozik a tartalom, az ikon, a miniatűr vagy a nyomtatott dokumentum. Az érvényes értékek a DVASPECT enumerálásából vagy DVASPECT2 származnak.

lindex
Az objektum érdekes része. Jelenleg csak -1 érvényes.

ptd
A DVTARGETDEVICE szerkezetre mutat, amely meghatározza azt a céleszközt, amelyhez az objektum méretét vissza kell adni.

hicTargetDev
Megadja a céleszköz információs környezetét, amelyet a ptd paraméter jelez, amelyből az objektum kinyerheti az eszközmetrikákat, és tesztelheti az eszköz képességeit. Ha a ptd null értékű, az objektumnak figyelmen kívül kell hagynia a hicTargetDev paraméter értékét.

pExtentInfo
DVEXTENTINFO Az adatok méretezését meghatározó struktúrára mutat. A DVEXTENTINFO struktúra a következő:

typedef struct tagExtentInfo
{
    UINT cb;
    DWORD dwExtentMode;
    SIZEL sizelProposed;
}   DVEXTENTINFO;

A struktúratag dwExtentMode két érték egyikét veheti fel:

  • DVEXTENT_CONTENT Érdeklődjön, hogy mekkora legyen a vezérlő, hogy pontosan illeszkedjen a tartalomhoz (illesztés a mérethez)

  • DVEXTENT_INTEGRAL Átméretezéskor adja át a javasolt méretet a vezérléshez

psizel
A vezérlőelem által visszaadott adatok méretezésére mutat. A visszaadott méretezési adatok beállítása -1 minden olyan dimenzióhoz, amely nem lett módosítva.

Visszaadott érték

Nonzero, ha sikeresen visszaadja vagy módosítja a méretet; egyéb esetben 0.

Megjegyzések

Felülbírálja ezt a függvényt, hogy visszaadja az objektum megjelenítési méretét a szerkezet javasolt méret- és méretmódjának legközelebbi értékéhez DVEXTENTINFO . Az alapértelmezett implementáció HAMIS értéket ad vissza, és nem módosítja a méretet.

COleControl::OnGetPredefinedStrings

A keretrendszer meghívta a tulajdonság lehetséges értékeit képviselő előre definiált sztringek halmazát.

virtual BOOL OnGetPredefinedStrings(
    DISPID dispid,
    CStringArray* pStringArray,
    CDWordArray* pCookieArray);

Paraméterek

dispid
A vezérlő valamely tulajdonságának feladóazonosítója.

pStringArray
Visszatérési értékekkel kitöltendő sztringtömb.

pCookieArray
Visszatérési értékekkel kitöltendő DWORD-tömb.

Visszaadott érték

Nemero, ha az elemeket hozzáadták a pStringArray és a pCookieArray elemhez.

Megjegyzések

Felülbírálja ezt a függvényt, ha a vezérlőelem olyan tulajdonsággal rendelkezik, amely sztringekkel ábrázolható lehetséges értékekkel rendelkezik. A pStringArray-hoz hozzáadott minden egyes elemhez hozzá kell adnia egy megfelelő "cookie" elemet a pCookieArray elemhez. Ezeket a "cookie" értékeket a keretrendszer később átadhatja a COleControl::OnGetPredefinedValue függvénynek.

COleControl::OnGetPredefinedValue

A keretrendszer meghívta, hogy beolvassa a korábban a felülbírálás COleControl::OnGetPredefinedStringsáltal visszaadott egyik előre definiált sztringnek megfelelő értéket.

virtual BOOL OnGetPredefinedValue(
    DISPID dispid,
    DWORD dwCookie,
    VARIANT* lpvarOut);

Paraméterek

dispid
A vezérlő valamely tulajdonságának feladóazonosítója.

dwCookie
Korábban a következő felülbírálásával COleControl::OnGetPredefinedStringsvisszaadott cookie-érték: .

lpvarOut
Mutasson arra a VARIANT struktúrára, amelyen keresztül a rendszer visszaad egy tulajdonságértéket.

Visszaadott érték

Nemzero, ha egy értéket ad vissza az lpvarOut; egyéb esetben 0.

COleControl::OnGetViewExtent

A keretrendszer meghívta egy tároló IViewObject2::GetExtent kérésére válaszul.

virtual BOOL OnGetViewExtent(
    DWORD dwDrawAspect,
    LONG lindex,
    DVTARGETDEVICE* ptd,
    LPSIZEL lpsizel);

Paraméterek

dwDrawAspect
Az objektum megjelenítendő formáját vagy aspektusát leíró DWORD. Az érvényes értékek a DVASPECT enumerálásából vagy DVASPECT2 származnak.

lindex
Az objektum érdekes része. Jelenleg csak -1 érvényes.

ptd
A DVTARGETDEVICE szerkezetre mutat, amely meghatározza azt a céleszközt, amelyhez az objektum méretét vissza kell adni.

lpsizel
Az objektum méretének visszaadására szolgáló helyre mutat.

Visszaadott érték

Nonzero, ha a mértékadatok visszaadása sikeresen megtörtént; egyéb esetben 0.

Megjegyzések

Felülbírálhatja ezt a függvényt, ha a vezérlő kétlépéses rajzot használ, és az átlátszatlan és áttetsző részei különböző dimenziókkal rendelkeznek.

COleControl::OnGetViewRect

A keretrendszer meghívta egy tároló kérésére IViewObjectEx::GetRect válaszul.

virtual BOOL OnGetViewRect(DWORD dwAspect, LPRECTL pRect);

Paraméterek

dwAspect
Az objektum megjelenítendő formáját vagy aspektusát leíró DWORD. Az érvényes értékek a DVASPECT enumerálásából vagy DVASPECT2 származnak:

  • DVASPECT_CONTENT teljes objektum határolókerete. Az objektum forrásának bal felső sarka és mérete megegyezik a visszaadott GetViewExtent méretével.

  • DVASPECT_OPAQUE téglalap alakú átlátszatlan területtel rendelkező objektumok visszaadják ezt a téglalapot. Mások sikertelenek.

  • DVASPECT_TRANSPARENT Téglalap, amely az összes átlátszó vagy szabálytalan részt lefedi.

pRect
A RECTL-struktúrára mutat, amely megadja azt a téglalapot, amelyben az objektumot meg kell rajzolni. Ez a paraméter szabályozza az objektum elhelyezését és nyújtását.

Visszaadott érték

Nonzero, ha az objektumhoz méretezett téglalapot sikeresen visszaadta; egyéb esetben 0.

Megjegyzések

Az objektum méretét egy adott pozícióból kiinduló téglalapmá alakítja OnGetViewRect (az alapértelmezett érték a képernyő bal felső sarka). Felülbírálhatja ezt a függvényt, ha a vezérlő kétlépéses rajzot használ, és az átlátszatlan és áttetsző részei különböző dimenziókkal rendelkeznek.

COleControl::OnGetViewStatus

A keretrendszer meghívta egy tároló kérésére IViewObjectEx::GetViewStatus válaszul.

virtual DWORD OnGetViewStatus();

Visszaadott érték

A VIEWSTATUS enumerálás egyik értéke, ha sikeres; egyéb esetben 0. A lehetséges értékek a következők bármely kombinációját képezik:

Név Description
VIEWSTATUS_OPAQUE Az objektum teljesen átlátszatlan. Ha ez a bit nincs beállítva, az objektum áttetsző részeket tartalmaz. Ez a bit csak a tartalommal kapcsolatos szempontokra vonatkozik, és nem DVASPECT_ICON vagy DVASPECT_DOCPRINT.
VIEWSTATUS_SOLIDBKGND Az objektum háttere szilárd (egyszínű, nem ecsetmintából áll). Ez a bit csak akkor értelmezhető, ha VIEWSTATUS_OPAQUE be van állítva, és csak a tartalommal kapcsolatos szempontokra vonatkozik, és nem DVASPECT_ICON vagy DVASPECT_DOCPRINT.
VIEWSTATUS_DVASPECTOPAQUE Az objektum támogatja a DVASPECT_OPAQUE. Ezzel a szemponttal minden olyan IViewObjectEx metódus meghívható, amely egy rajzi szempontot paraméterként használ.
VIEWSTATUS_DVASPECTTRANSPARENT Az objektum támogatja a DVASPECT_TRANSPARENT. Ezzel a szemponttal minden IViewObjectEx olyan metódus meghívható, amely egy rajzi szempontot paraméterként használ.

Megjegyzések

Felülbírálja ezt a függvényt, ha a vezérlő kétlépéses rajzot használ. Az alapértelmezett implementáció VIEWSTATUS_OPAQUE ad vissza.

COleControl::OnHideToolBars

A keretrendszer meghívja, amikor a vezérlő felhasználói felület inaktiválva van.

virtual void OnHideToolBars();

Megjegyzések

Az implementációnak el kell rejtenie a program által OnShowToolbarsmegjelenített összes eszköztárat.

COleControl::OnInactiveMouseMove

Egy WM_MOUSEMOVE üzenet fogadásakor az egérmutató alatti inaktív objektum tárolója hívja meg.

virtual void OnInactiveMouseMove(
    LPCRECT lprcBounds,
    long x,
    long y,
    DWORD dwKeyState);

Paraméterek

lprcBounds
Az objektum határoló téglalapja a tartalmazó ablak ügyfélkoordinátáiban. Az objektum pontos pozícióját és méretét jelzi a képernyőn, amikor a WM_MOUSEMOVE üzenet érkezett.

x
Az egér helyének x koordinátája a tárolóablak ügyfélkoordinátáiban.

y
Az egér helyének y koordinátája a tárolóablak ügyfélkoordinátáiban.

dwKeyState
A billentyűzet módosító billentyűinek aktuális állapotát azonosítja a billentyűzeten. Az érvényes értékek a jelölők MK_CONTROL, MK_SHIFT, MK_ALT, MK_BUTTON, MK_LBUTTON, MK_MBUTTON és MK_RBUTTON kombinációja lehet.

Megjegyzések

Vegye figyelembe, hogy az ablak ügyfélkoordinátái (képpontjai) az egérmutató pozíciójának átadására szolgálnak. Ezt úgy teszi lehetővé, hogy az objektum határoló téglalapját ugyanabban a koordinátarendszerben adja át.

COleControl::OnInactiveSetCursor

Egy WM_SETCURSOR üzenet fogadásakor az egérmutató alatti inaktív objektum tárolója hívja meg.

virtual BOOL OnInactiveSetCursor(
    LPCRECT lprcBounds,
    long x,
    long y,
    DWORD dwMouseMsg,
    BOOL bSetAlways);

Paraméterek

lprcBounds
Az objektum határoló téglalapja a tartalmazó ablak ügyfélkoordinátáiban. Az objektum pontos pozícióját és méretét jelzi a képernyőn, amikor a WM_SETCURSOR üzenet érkezett.

x
Az egér helyének x koordinátája a tárolóablak ügyfélkoordinátáiban.

y
Az egér helyének y koordinátája a tárolóablak ügyfélkoordinátáiban.

dwMouseMsg
Annak az egérüzenetnek az azonosítója, amelyhez WM_SETCURSOR történt.

bSetAlways
Megadja, hogy az objektumnak be kell-e állítania a kurzort. Ha IGAZ, az objektumnak be kell állítania a kurzort; ha HAMIS, a kurzor nem köteles beállítani a kurzort, és ebben az esetben S_FALSE kell visszaadnia.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Vegye figyelembe, hogy az ablak ügyfélkoordinátái (képpontjai) az egérmutató pozíciójának átadására szolgálnak. Ezt úgy teszi lehetővé, hogy az objektum határoló téglalapját ugyanabban a koordinátarendszerben adja át.

COleControl::OnKeyDownEvent

A keretrendszer egy tőzsdei KeyDown-esemény feldolgozása után hívja meg.

virtual void OnKeyDownEvent(
    USHORT nChar,
    USHORT nShiftState);

Paraméterek

nChar
A lenyomott kulcs virtuális kulcskódjának értéke. A szabványos virtuális kulcskódok listájáért lásd: Winuser.h

nShiftState
A következő jelölők kombinációját tartalmazza:

  • SHIFT_MASK A SHIFT billentyűt a művelet során lenyomta.

  • CTRL_MASK A CTRL billentyűt a művelet közben lenyomta.

  • ALT_MASK Az ALT billentyűt a művelet során lenyomta.

Megjegyzések

Bírálja felül ezt a függvényt, ha a vezérlőnek hozzá kell férnie a kulcsadatokhoz az esemény aktiválása után.

COleControl::OnKeyPressEvent

A keretrendszer meghívta, miután a tőzsdei KeyPress eseményt kirúgták.

virtual void OnKeyPressEvent(USHORT nChar);

Paraméterek

nChar
A lenyomott kulcs virtuális kulcskódjának értékét tartalmazza. A szabványos virtuális kulcskódok listájáért lásd: Winuser.h

Megjegyzések

Vegye figyelembe, hogy az nChar értéket a tároló esetleg módosította.

Bírálja felül ezt a függvényt, ha értesítést szeretne kapni az esemény bekövetkezése után.

COleControl::OnKeyUpEvent

A keretrendszer egy tőzsdei KeyDown-esemény feldolgozása után hívja meg.

virtual void OnKeyUpEvent(
    USHORT nChar,
    USHORT nShiftState);

Paraméterek

nChar
A lenyomott kulcs virtuális kulcskódjának értéke. A szabványos virtuális kulcskódok listájáért lásd: Winuser.h

nShiftState
A következő jelölők kombinációját tartalmazza:

  • SHIFT_MASK A SHIFT billentyűt a művelet során lenyomta.

  • CTRL_MASK A CTRL billentyűt a művelet közben lenyomta.

  • ALT_MASK Az ALT billentyűt a művelet során lenyomta.

Megjegyzések

Bírálja felül ezt a függvényt, ha a vezérlőnek hozzá kell férnie a kulcsadatokhoz az esemény aktiválása után.

COleControl::OnMapPropertyToPage

A keretrendszer meghívta egy tulajdonságlap osztályazonosítójának lekérésére, amely implementálja a megadott tulajdonság szerkesztését.

virtual BOOL OnMapPropertyToPage(
    DISPID dispid,
    LPCLSID lpclsid,
    BOOL* pbPageOptional);

Paraméterek

dispid
A vezérlő valamely tulajdonságának feladóazonosítója.

lpclsid
Mutató egy CLSID olyan struktúrára, amelyen keresztül az osztályazonosító vissza lesz adva.

pbPageOptional
Azt jelzi, hogy a megadott tulajdonságlap használata nem kötelező-e.

Visszaadott érték

Nonzero, ha az osztályazonosítót lpclsid-ben adták vissza; egyéb esetben 0.

Megjegyzések

A függvény felülbírálása a vezérlő tulajdonságlapjainak meghívására a tároló tulajdonságböngészőjéből.

COleControl::OnMnemonic

A keretrendszer meghívta, amikor a tároló azt észlelte, hogy az OLE-vezérlő mnemonikus kulcsát lenyomták.

virtual void OnMnemonic(LPMSG pMsg);

Paraméterek

pMsg
Mutasson a mnemonikus billentyű lenyomásával létrehozott Windows-üzenetre.

COleControl::OnProperties

A keretrendszer meghívta, amikor a tároló meghívta a vezérlő tulajdonságokra vonatkozó parancsát.

virtual BOOL OnProperties(
    LPMSG lpMsg,
    HWND hWndParent,
    LPCRECT lpRect);

Paraméterek

lpMsg
Az igét meghívó Windows-üzenetre mutató mutató.

hWndParent
A vezérlő szülőablakának fogópontja.

lpRect
A tároló vezérlőeleme által használt téglalapra mutató mutató.

Visszaadott érték

Nonzero, ha a hívás sikeres; egyéb esetben 0.

Megjegyzések

Az alapértelmezett implementáció egy modális tulajdonság párbeszédpanelt jelenít meg.

Ezzel a függvénnyel is megjelenítheti a vezérlő tulajdonságlapjait. Hívjon fel egy OnProperties függvényt, és adja át a vezérlő szülőjének fogópontját a hWndParent paraméterben. Ebben az esetben a rendszer figyelmen kívül hagyja az lpMsg és az lpRect paraméterek értékeit.

COleControl::OnQueryHitPoint

A keretrendszer meghívta egy tároló kérésére IViewObjectEx::QueryHitPoint válaszul.

virtual BOOL OnQueryHitPoint(
    DWORD dwAspect,
    LPCRECT pRectBounds,
    POINT ptlLoc,
    LONG lCloseHint,
    DWORD* pHitResult);

Paraméterek

dwAspect
Meghatározza, hogy az objektum hogyan legyen ábrázolva. Az érvényes értékek a DVASPECT enumerálásából vagy DVASPECT2 származnak.

pRectBounds
Mutasson egy RECT szerkezetre, amely az OLE vezérlőügyfél területének határoló téglalapját adja meg.

ptlLoc
Mutasson a POINT szerkezetre, amely megadja a találatok ellenőrzésére szolgáló pontot. A pont az OLE ügyfélterület koordinátáiban van megadva.

lCloseHint
A találatok által ellenőrzött ponthoz "közel" definiált távolság.

pHitResult
Mutasson a találati lekérdezés eredményére. Az alábbi értékek egyike:

  • HITRESULT_OUTSIDE ptlLoc az OLE objektumon kívül van, és nem zárja be.

  • HITRESULT_TRANSPARENT ptlLoc az OLE objektum határán belül van, de nem közel a képhez. Egy átlátszó kör közepén lévő pont például HITRESULT_TRANSPARENT lehet.

  • HITRESULT_CLOSE ptlLoc az OLE objektumon belül vagy kívül van, de elég közel van ahhoz, hogy az objektumon belül figyelembe lehessen venni. Ezt az értéket kis, vékony vagy részletes objektumok is használhatják. Még akkor is, ha egy pont egy objektum határoló téglalapja kívül esik, akkor is közel lehet (ez a kis objektumok ütéséhez szükséges).

  • HITRESULT_HIT ptlLoc az objektum képén belül található.

Visszaadott érték

Nonzero, ha egy találat eredményének visszaadása sikeresen megtörtént; egyéb esetben 0. A találatok átfedésben vannak az OLE vezérlő megjelenítési területével.

Megjegyzések

Lekérdezi, hogy egy objektum megjelenítendő téglalapja átfedésben van-e az adott ponttal (eléri a pontot). QueryHitPoint felülbírálható a nem téglalap alakú objektumok találatainak teszteléséhez.

COleControl::OnQueryHitRect

A keretrendszer meghívta egy tároló kérésére IViewObjectEx::QueryHitRect válaszul.

virtual BOOL OnQueryHitRect(
    DWORD dwAspect,
    LPCRECT pRectBounds,
    LPCRECT prcLoc,
    LONG lCloseHint,
    DWORD* pHitResult);

Paraméterek

dwAspect
Megadja, hogy az objektum hogyan legyen ábrázolva. Az érvényes értékek a DVASPECT enumerálásából vagy DVASPECT2 származnak.

pRectBounds
Mutasson egy RECT szerkezetre, amely az OLE vezérlőügyfél területének határoló téglalapját adja meg.

prcLoc
Mutató az objektum bal felső sarkához viszonyítva arra a RECT szerkezetre, amely meghatározza, hogy melyik téglalapot kell ellenőrizni egy találathoz (átfedésben az objektum téglalapjával).

lCloseHint
Nincs használatban.

pHitResult
Mutasson a találati lekérdezés eredményére. Az alábbi értékek egyike:

  • HITRESULT_OUTSIDE OLE objektum nem talál pontot a téglalapban.

  • HITRESULT_HIT legalább egy pont a téglalapban találat lenne az objektumon.

Visszaadott érték

Nonzero, ha egy találat eredményének visszaadása sikeresen megtörtént; egyéb esetben 0.

Megjegyzések

Lekérdezi, hogy egy objektum megjelenítendő téglalapja átfedésben van-e az adott téglalap bármely pontjával (eléri a téglalapot). QueryHitRect felülbírálható a nem téglalap alakú objektumok találatainak teszteléséhez.

COleControl::OnRenderData

A keretrendszer meghívta, hogy a megadott formátumban kérje le az adatokat.

virtual BOOL OnRenderData(
    LPFORMATETC lpFormatEtc,
    LPSTGMEDIUM lpStgMedium);

Paraméterek

lpFormatEtc
A FORMATETC-struktúrára mutat, amely megadja az információkérés formátumát.

lpStgMedium
Egy STGMEDIUM-struktúrára mutat, amelyben az adatokat vissza kell adni.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

A megadott formátum egy korábban a vezérlőobjektumba került a DelayRenderData vagy a DelayRenderFileData tagfüggvények használatával a késleltetett rendereléshez. A függvény alapértelmezett implementációja meghívja OnRenderFileData , vagy OnRenderGlobalDataha a megadott tárolóeszköz fájl vagy memória. Ha a kért formátum CF_METAFILEPICT vagy az állandó tulajdonságkészlet formátuma, az alapértelmezett implementáció a megfelelő adatokat jeleníti meg, és nonzero értéket ad vissza. Ellenkező esetben 0 értéket ad vissza, és nem tesz semmit.

Ha az lpStgMedium-tymed> TYMED_NULL, az STGMEDIUM-t az lpFormatEtc-tymed> által meghatározott módon kell lefoglalni és kitölteni. Ha nem TYMED_NULL, az STGMEDIUM-t a helyén kell kitölteni az adatokkal.

Felülbírálja ezt a függvényt, hogy az adatokat a kért formátumban és adathordozón adja meg. Az adatoktól függően érdemes lehet inkább felülbírálni a függvény többi verziójának egyikét. Ha az adatok kicsik és méretben rögzítettek, felülbírálás OnRenderGlobalData. Ha az adatok fájlban vagy változó méretűek, felülbírálhatja a fájlt OnRenderFileData.

További információkért tekintse meg a FORMATETC Windows SDK struktúráját és STGMEDIUM struktúráját.

COleControl::OnRenderFileData

A keretrendszer meghívja, hogy a megadott formátumban kérje le az adatokat, ha a tárolóeszköz egy fájl.

virtual BOOL OnRenderFileData(
    LPFORMATETC lpFormatEtc,
    CFile* pFile);

Paraméterek

lpFormatEtc
A FORMATETC-struktúrára mutat, amely megadja az információkérés formátumát.

pFile
Egy CFile objektumra mutat, amelyben az adatokat renderelni kell.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

A megadott formátum egy korábban a vezérlőobjektumban a DelayRenderData tagfüggvénnyel késleltetett rendereléshez. A függvény alapértelmezett implementációja egyszerűen HAMIS értéket ad vissza.

Felülbírálja ezt a függvényt, hogy az adatokat a kért formátumban és adathordozón adja meg. Az adatoktól függően előfordulhat, hogy inkább felül szeretné bírálni a függvény másik verzióját. Ha több tárolóeszközt szeretne kezelni, felülbíráljon OnRenderData. Ha az adatok fájlban vagy változó méretűek, felülbírálhatja a fájlt OnRenderFileData.

További információkért tekintse meg a FORMATETC Windows SDK struktúráját.

COleControl::OnRenderGlobalData

A keretrendszer meghívja, hogy a megadott formátumban kérje le az adatokat, ha a megadott tárolóeszköz globális memória.

virtual BOOL OnRenderGlobalData(
    LPFORMATETC lpFormatEtc,
    HGLOBAL* phGlobal);

Paraméterek

lpFormatEtc
A FORMATETC-struktúrára mutat, amely megadja az információkérés formátumát.

phGlobal
Egy leíróra mutat a globális memóriára, amelyben az adatokat vissza kell adni. Ha nincs lefoglalva memória, ez a paraméter null értékű lehet.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

A megadott formátum egy korábban a vezérlőobjektumban a DelayRenderData tagfüggvénnyel késleltetett rendereléshez. A függvény alapértelmezett implementációja egyszerűen HAMIS értéket ad vissza.

Ha a phGlobal null értékű, akkor egy új HGLOBAL-t kell lefoglalni és visszaadni a phGlobalban. Ellenkező esetben a phGlobal által megadott HGLOBAL-t meg kell tölteni az adatokkal. A HGLOBAL-ban elhelyezett adatok mennyisége nem haladhatja meg a memóriablokk aktuális méretét. Emellett a blokk nem helyezhető át nagyobb méretre.

Felülbírálja ezt a függvényt, hogy az adatokat a kért formátumban és adathordozón adja meg. Az adatoktól függően érdemes lehet inkább felülbírálni a függvény többi verziójának egyikét. Ha több tárolóeszközt szeretne kezelni, felülbíráljon OnRenderData. Ha az adatok fájlban vagy változó méretűek, felülbírálhatja a fájlt OnRenderFileData.

További információkért tekintse meg a FORMATETC Windows SDK struktúráját.

COleControl::OnResetState

A keretrendszer meghívja, amikor a vezérlő tulajdonságait az alapértelmezett értékekre kell állítani.

virtual void OnResetState();

Megjegyzések

Az alapértelmezett implementáció meghívja a DoPropExchange-et, és átad egy CPropExchange objektumot, amely miatt a tulajdonságok az alapértelmezett értékekre lesznek beállítva.

A vezérlőíró inicializálási kódot szúrhat be az OLE-vezérlőhöz ebben a felülírható fájlban. Ezt a függvényt akkor hívja meg a rendszer, ha az IPersistStream::Load or IPersistStorage::Load or IPersistStorage::Load or IPersistStorage::Load or IPersistStorage::Load or IPersistStorage::IPersistStreamInit::InitNew is called or .IPersistStream::LoadIPersistStorage::Load

COleControl::OnSetClientSite

A keretrendszer meghívja, amikor a tároló meghívta a vezérlő függvényét IOleControl::SetClientSite .

virtual void OnSetClientSite();

Megjegyzések

Alapértelmezés szerint ellenőrzi, OnSetClientSite hogy az adatelérési út tulajdonságai be vannak-e töltve, és ha vannak, meghívja DoDataPathPropExchangeőket.

A függvény felülbírálása az értesítés bármilyen speciális feldolgozásához. A függvény felülbírálásának különösen az alaposztályt kell meghívnia.

COleControl::OnSetData

A keretrendszer meghívta, hogy cserélje le a vezérlő adatait a megadott adatokra.

virtual BOOL OnSetData(
    LPFORMATETC lpFormatEtc,
    LPSTGMEDIUM lpStgMedium,
    BOOL bRelease);

Paraméterek

lpFormatEtc
Mutató az adatok formátumát meghatározó FORMATETC-struktúrára .

lpStgMedium
Mutasson egy STGMEDIUM-struktúrára , amelyben az adatok találhatók.

bRelease
IGAZ, ha a vezérlőnek szabaddá kell tennie a tárolóeszközt; HAMIS, ha a vezérlő nem szabadíthatja fel a tárolóeszközt.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ha az adatok állandó tulajdonságkészlet formátumban állnak, az alapértelmezett implementáció ennek megfelelően módosítja a vezérlő állapotát. Ellenkező esetben az alapértelmezett implementáció nem végez semmit. Ha a bRelease értéke IGAZ, akkor hívás ReleaseStgMedium történik, ellenkező esetben nem.

A függvény felülbírálása a vezérlő adatainak a megadott adatokra való lecseréléséhez.

További információkért tekintse meg a FORMATETC Windows SDK struktúráját és STGMEDIUM struktúráját.

COleControl::OnSetExtent

A keretrendszer meghívja, amikor módosítani kell a vezérlő mértékét az IOleObject::SetExtent hívásának eredményeként.

virtual BOOL OnSetExtent(LPSIZEL lpSizeL);

Paraméterek

lpSizeL
Mutató a SIZEL szerkezetre, amely hosszú egész számokat használ a vezérlő szélességének és magasságának megjelenítéséhez, HIMETRIC egységekben kifejezve.

Visszaadott érték

Nonzero, ha a méretváltoztatást elfogadták; egyéb esetben 0.

Megjegyzések

Az alapértelmezett implementáció kezeli a vezérlő méretének átméretezését. Ha a vezérlő aktív, a rendszer meghívja a tárolót OnPosRectChanged .

A függvény felülbírálása a vezérlő alapértelmezett átméretezésének módosításához.

COleControl::OnSetObjectRects

A keretrendszer meghívta az IOleInPlaceObject::SetObjectRects hívás implementálásához.

virtual BOOL OnSetObjectRects(
    LPCRECT lpRectPos,
    LPCRECT lpRectClip);

Paraméterek

lpRectPos
Mutató egy RECT szerkezetre, amely a vezérlő új pozícióját és méretét jelzi a tárolóhoz képest.

lpRectClip
Mutató egy RECT olyan szerkezetre, amely egy téglalap alakú területre mutat, amelyre a vezérlőt ki kell vágni.

Visszaadott érték

Nonzero, ha az áthelyezést elfogadták; egyéb esetben 0.

Megjegyzések

Az alapértelmezett implementáció automatikusan kezeli a vezérlőablak áthelyezését és átméretezését, és IGAZ értéket ad vissza.

A függvény alapértelmezett viselkedésének módosításához felülbírálja ezt a függvényt.

COleControl::OnShowToolBars

A keretrendszer meghívta a vezérlő felhasználói felületének aktiválásakor.

virtual void OnShowToolBars();

Megjegyzések

Az alapértelmezett implementáció nem végez semmit.

COleControl::OnTextChanged

A keretrendszer meghívta, amikor a tőzsdei Caption vagy Text tulajdonság értéke megváltozott.

virtual void OnTextChanged();

Megjegyzések

Az alapértelmezett megvalósítási hívások InvalidateControl.

Bírálja felül ezt a függvényt, ha értesítést szeretne kapni a tulajdonság módosítása után.

COleControl::OnWindowlessMessage

A keretrendszer meghívta egy tároló kérésére IOleInPlaceObjectWindowless::OnWindowMessage válaszul.

virtual BOOL OnWindowlessMessage(
    UINT msg,
    WPARAM wParam,
    LPARAM lParam,
    LRESULT* plResult);

Paraméterek

msg
A Windows által átadott üzenetazonosító.

wParam
A Windows által átadott módon. További üzenetspecifikus információkat ad meg. A paraméter tartalma az msg paraméter értékétől függ.

lParam
A Windows által átadott módon. További üzenetspecifikus információkat ad meg. A paraméter tartalma az msg paraméter értékétől függ.

plResult
Windows-eredménykód. Meghatározza az üzenet feldolgozásának eredményét, és az elküldött üzenettől függ.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ablak nélküli vezérlők ablaküzeneteinek kezelése. COleControl OnWindowlessMessage Az egér- és billentyűzetüzenetek kivételével az ablaküzenetekhez is használható. COleControl A SetCapture és a SetFocus kifejezetten az egérrögzítéshez és a billentyűzetfókuszhoz biztosít ablak nélküli OLE-objektumokhoz.

Mivel az ablak nélküli objektumoknak nincs ablakuk, szükségük van egy mechanizmusra, amely lehetővé teszi, hogy a tároló üzeneteket küldjön nekik. Az ablak nélküli OLE-objektumok üzeneteket kapnak a tárolóból a OnWindowMessage felület metódusán IOleInPlaceObjectWindowless keresztül (az IOleInPlaceObject kiterjesztése az ablak nélküli támogatáshoz). OnWindowMessage nem vesz fel paramétert HWND .

COleControl::P arentToClient

A pPoint koordinátáit ügyfélkoordinátákká alakítja.

virtual UINT ParentToClient(
    LPCRECT lprcBounds,
    LPPOINT pPoint,
    BOOL bHitTest = FALSE) const;

Paraméterek

lprcBounds
Mutasson a tárolón belüli OLE-vezérlő határaira. Nem az ügyfélterület, hanem a teljes vezérlő területe, beleértve a szegélyeket és a görgetősávokat.

pPoint
Mutasson a vezérlő ügyfélterületének koordinátáira lefordítandó szülőpontra (tárolópontra).

bHitTest
Megadja, hogy a tesztelést a ponton kell-e elvégezni.

Visszaadott érték

Ha a bHitTest ÉRTÉKE HAMIS, akkor a HTNOWHERE értéket adja vissza. Ha a bHitTest ÉRTÉKE IGAZ, azt a helyet adja vissza, ahol a szülőpont (tároló) az OLE-vezérlő ügyfélterületén landolt, és az alábbi találati tesztértékek egyike:

  • HTBORDER Egy olyan ablak szegélyén, amely nem rendelkezik méretezési szegélyrel.

  • HTBOTTOM Az ablak alsó vízszintes szegélyén.

  • HTBOTTOMLEFT Az ablakszegély bal alsó sarkában.

  • HTBOTTOMRIGHT Az ablakszegély jobb alsó sarkában.

  • HTCAPTION Egy címsor területén.

  • HTCLIENT Egy ügyfélterületen.

  • HTERROR A képernyő hátterében vagy az ablakok közötti elválasztó vonalon (ugyanaz, mint a HTNOWHERE, azzal a különbségtel, hogy a DefWndProc Windows függvény egy hiba jelzésére hangjelzést ad).

  • HTGROWBOX Méret mezőben.

  • HTHSCROLL A vízszintes görgetősávon.

  • HTLEFT Az ablak bal szegélyén.

  • HTMAXBUTTON A Teljes méret gomb.

  • HTMENU Egy menüterületen.

  • HTMINBUTTON Kis méret gomb.

  • HTNOWHERE A képernyő hátterében vagy az ablakok közötti elválasztó vonalon.

  • HTREDUCE a Kis méretű gombra.

  • HTRIGHT Az ablak jobb oldalán.

  • HTSIZE Méret mezőben (ugyanaz, mint a HTGROWBOX).

  • HTSYSMENU Egy Vezérlő menüben vagy egy gyermekablak Bezárás gombján.

  • HTTOP Az ablak felső vízszintes szegélyén.

  • HTTOPLEFT Az ablakszegély bal felső sarkában.

  • HTTOPRIGHT Az ablakszegély jobb felső sarkában.

  • HTTRANSPARENT Egy másik ablak által jelenleg lefedett ablakban.

  • HTVSCROLL A függőleges görgetősávon.

  • HTZOOM A Teljes méret gombban.

Megjegyzések

A bemeneti pPoint a szülő forrásához (a tároló bal felső sarkához) viszonyítva van. A kimeneti pPoint az OLE vezérlő ügyfélterületének forrásához viszonyítva (a vezérlő ügyfélterületének bal felső sarkában).

COleControl::P ostModalDialog

Értesíti a tárolót, hogy bezárt egy modális párbeszédpanelt.

void PostModalDialog(HWND hWndParent = NULL);

Paraméterek

hWndParent
A modális párbeszédpanel szülőablakának kezelése.

Megjegyzések

A modális párbeszédpanel megjelenítése után hívja meg ezt a függvényt. Ezt a függvényt úgy kell meghívnia, hogy a tároló engedélyezhesse a legfelső szintű, letiltott PreModalDialogablakokat. Ezt a függvényt párosítani kell egy hívással.PreModalDialog

COleControl::P reModalDialog

Értesíti a tárolót, hogy egy modális párbeszédpanel jelenik meg.

void PreModalDialog(HWND hWndParent = NULL);

Paraméterek

hWndParent
A modális párbeszédpanel szülőablakának kezelése.

Megjegyzések

A modális párbeszédpanel megjelenítése előtt hívja meg ezt a függvényt. Ezt a függvényt úgy kell meghívnia, hogy a tároló letilthassa az összes legfelső szintű ablakát. A modális párbeszédpanel megjelenése után meg kell hívnia a kívánt elemet PostModalDialog.

COleControl::RecreateControlWindow

Elpusztítja és újra létrehozza a vezérlő ablakát.

void RecreateControlWindow();

Megjegyzések

Erre akkor lehet szükség, ha módosítania kell az ablak stílusbitjét.

COleControl::Frissítés

Az OLE vezérlő újrafestésének kényszerítése.

void Refresh();

Megjegyzések

Ezt a függvényt az COleControl alaposztály támogatja készletmetódusként, azaz Frissítés néven. Ez lehetővé teszi, hogy az OLE-vezérlő felhasználói egy adott időpontban újrarajzolják a vezérlőt. A metódussal kapcsolatos további információkért tekintse meg az ActiveX-vezérlők: Metódusok című cikket.

COleControl::ReleaseCapture

Felszabadítja az egérrögzítést.

BOOL ReleaseCapture();

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ha a vezérlő jelenleg egérrögzítéssel rendelkezik, a rögzítés felszabadul. Ellenkező esetben ennek a függvénynek nincs hatása.

COleControl::ReleaseDC

Egy ablak nélküli vezérlő tárolójának megjelenítési eszközkörnyezetét oldja fel, így az eszközkörnyezetet más alkalmazások is használhatják.

int ReleaseDC(CDC* pDC);

Paraméterek

Pdc
Azonosítja a felszabadítani kívánt tárolóeszköz-környezetet.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Az alkalmazásnak minden egyes GetDC-hívást meg kell hívniaReleaseDC.

COleControl::ReparentControlWindow

Beállítja a vezérlő szülőját.

virtual void ReparentControlWindow(
    HWND hWndOuter,
    HWND hWndParent);

Paraméterek

hWndOuter
A vezérlőablak fogópontja.

hWndParent
Az új szülőablak leírója.

Megjegyzések

Hívja meg ezt a függvényt a vezérlőablak szülőjének alaphelyzetbe állításához.

COleControl::ResetStockProps

Inicializálja a részvénytulajdonságok állapotát az COleControl alapértelmezett értékekkel.

void ResetStockProps();

Megjegyzések

A tulajdonságok a következők: Megjelenés, BackColor, BorderStyle, Felirat, Engedélyezve, Betűtípus, ForeColor, hWnd és Text. A részvénytulajdonságok leírását az ActiveX-vezérlők: Részvénytulajdonságok hozzáadása című témakörben talál.

A vezérlő bináris inicializálási teljesítményét a vezérlők használatával ResetStockProps és ResetVersion felülbírálásával COleControl::OnResetStatejavíthatja. Lásd az alábbi példát. Az inicializálás optimalizálásával kapcsolatos további információkért tekintse meg az ActiveX-vezérlők: Optimalizálás című témakört.

Example

void CMyAxCtrl::OnResetState()
{
   ResetVersion(MAKELONG(_wVerMinor, _wVerMajor));
   ResetStockProps();

   // initialize custom properties here
}

COleControl::ResetVersion

Inicializálja a verziószámot a megadott értékre.

void ResetVersion(DWORD dwVersionDefault);

Paraméterek

dwVersionDefault
A vezérlőhöz rendelendő verziószám.

Megjegyzések

A vezérlő bináris inicializálási teljesítményét a vezérlők használatával ResetVersion és ResetStockProps felülbírálásával COleControl::OnResetStatejavíthatja. Lásd a példát a ResetStockProps webhelyen. Az inicializálás optimalizálásával kapcsolatos további információkért tekintse meg az ActiveX-vezérlők: Optimalizálás című témakört.

COleControl::ScrollWindow

Lehetővé teszi, hogy egy ablak nélküli OLE-objektum görgetjen egy területet a helyben aktív képén belül a képernyőn.

void ScrollWindow(
    int xAmount,
    int yAmount,
    LPCRECT lpRect = NULL,
    LPCRECT lpClipRect = NULL);

Paraméterek

xAmount
Meghatározza a vízszintes görgetés mennyiségét az eszközegységekben. Ennek a paraméternek negatív értéknek kell lennie a bal oldali görgetéshez.

yAmount
Meghatározza a függőleges görgetés eszközegységekben megadott mennyiségét. Ennek a paraméternek negatív értéknek kell lennie a felfelé görgetéshez.

lpRect
Egy CRect objektumra vagy RECT-struktúrára mutat, amely meghatározza az OLE objektum görgetendő ügyfélterületének azon részét, amely az adott ablak ügyfélkoordinátáiban található. Ha az lpRect null értékű, a rendszer görgeti az OLE-objektum teljes ügyfélterületét.

lpClipRect
Olyan objektumra CRect vagy RECT struktúrára mutat, amely meghatározza a kivágni kívánt téglalapot. Csak a téglalapon belüli képpontok görgethetők. A téglalapon kívüli biteket akkor sem érinti a rendszer, ha az lpRect téglalapban vannak. Ha az lpClipRect null értékű, a görgető téglalapon nem történik kivágás.

COleControl::SelectFontObject

Kijelöl egy betűtípust egy eszközkörnyezetben.

CFont* SelectFontObject(
    CDC* pDC,
    CFontHolder& fontHolder);

Paraméterek

Pdc
Mutasson egy eszközkörnyezet-objektumra.

fontHolder
Hivatkozás a kijelölendő betűtípust képviselő CFontHolder objektumra.

Visszaadott érték

A korábban kijelölt betűtípusra mutató mutató. Ha a hívó befejezte a fontHoldert használó összes rajzműveletet, újra kell jelölnie a korábban kijelölt betűtípust úgy, hogy paraméterként átadja a CDC::SelectObject parancsnak.

COleControl::SelectStockFont

Kiválasztja a stock Font tulajdonságot egy eszközkörnyezetben.

CFont* SelectStockFont(CDC* pDC);

Paraméterek

Pdc
Az eszközkörnyezet, amelyben a betűtípus ki lesz választva.

Visszaadott érték

Mutató a korábban kijelölt CFont objektumra. Ha végzett, a CDC::SelectObject használatával jelölje ki ezt a betűtípust az eszközkörnyezetbe.

COleControl::SerializeExtent

Szerializálja vagy inicializálja a vezérlőnek kihelyezett megjelenítési terület állapotát.

void SerializeExtent(CArchive& ar);

Paraméterek

Ar
Egy CArchive objektum, amelyből szerializálható.

Megjegyzések

A vezérlő bináris adatmegőrzési teljesítményét a , SerializeStockPropsés SerializeVersion a felülbírálás használatával SerializeExtentjavíthatjaCOleControl::Serialize. Lásd az alábbi példát. Az inicializálás optimalizálásával kapcsolatos további információkért tekintse meg az ActiveX-vezérlők: Optimalizálás című témakört.

Example

void CMyAxCtrl::Serialize(CArchive &ar)
{
   SerializeVersion(ar, MAKELONG(_wVerMinor, _wVerMajor));
   SerializeExtent(ar);
   SerializeStockProps(ar);

   if (ar.IsStoring())
   { // storing code
   }
   else
   { // loading code
   }
}

COleControl::SerializeStockProps

Szerializálja vagy inicializálja a COleControl részvénytulajdonságok állapotát: Megjelenés, BackColor, BorderStyle, Felirat, Engedélyezve, Betűtípus, ForeColor és Szöveg.

void SerializeStockProps(CArchive& ar);

Paraméterek

Ar
Egy CArchive objektum, amelyből szerializálható.

Megjegyzések

A részvénytulajdonságok leírását az ActiveX-vezérlők: Részvénytulajdonságok hozzáadása című témakörben talál.

A vezérlő bináris adatmegőrzési teljesítményét a , SerializeExtentés SerializeVersion a felülbírálás használatával SerializeStockPropsjavíthatjaCOleControl::Serialize. Lásd például a SerializeExtent kódját. Az inicializálás optimalizálásával kapcsolatos további információkért tekintse meg az ActiveX-vezérlők: Optimalizálás című témakört.

COleControl::SzerializeVersion

Szerializálja vagy inicializálja a vezérlő verzióadatainak állapotát.

DWORD SerializeVersion(
    CArchive& ar,
    DWORD dwVersionDefault,
    BOOL bConvert = TRUE);

Paraméterek

Ar
Egy CArchive objektum, amelyből szerializálható.

dwVersionDefault
A vezérlő aktuális verziószáma.

bConvert
Azt jelzi, hogy az állandó adatokat a mentéskor a legújabb formátumba kell-e konvertálni, vagy ugyanolyan formátumban kell-e tartani, mint a betöltésekor.

Visszaadott érték

A vezérlő verziószáma. Ha a megadott archívum betöltődik, SerializeVersion az adott archívumból betöltött verziót adja vissza. Ellenkező esetben a jelenleg betöltött verziót adja vissza.

Megjegyzések

A vezérlő bináris adatmegőrzési teljesítményét a , SerializeExtentés SerializeStockProps a felülbírálás használatával SerializeVersionjavíthatjaCOleControl::Serialize. Lásd például a SerializeExtent kódját. Az inicializálás optimalizálásával kapcsolatos további információkért tekintse meg az ActiveX-vezérlők: Optimalizálás című témakört.

COleControl::SetAppearance

Beállítja a vezérlőelem tőzsdei Megjelenés tulajdonságértékét.

void SetAppearance (short sAppearance);

Paraméterek

sAppearance
A short vezérlőelem megjelenéséhez használandó (VT_I2) érték. A nulla érték a vezérlő megjelenését síkra állítja, az 1 érték pedig a vezérlő megjelenését 3D értékre állítja.

Megjegyzések

További információ a részvénytulajdonságokról: ActiveX-vezérlők: Tulajdonságok.

COleControl::SetBackColor

Beállítja a készlet BackColor tulajdonságértékét a vezérlőelemben.

void SetBackColor(OLE_COLOR dwBackColor);

Paraméterek

dwBackColor
A vezérlő háttérrajzához használandó OLE_COLOR érték.

Megjegyzések

A tulajdonság és más kapcsolódó tulajdonságok használatáról további információt az ActiveX-vezérlők: Tulajdonságok című cikkben talál.

COleControl::SetBorderStyle

Beállítja a vezérlőelem BorderStyle tulajdonságértékét.

void SetBorderStyle(short sBorderStyle);

Paraméterek

sBorderStyle
A vezérlőelem új szegélystílusa; A 0 azt jelzi, hogy nincs szegély, az 1 pedig normál szegélyt jelöl.

Megjegyzések

A vezérlőablak ezután újra létrejön és OnBorderStyleChanged meghívható.

COleControl::SetCapture

Ez azt eredményezi, hogy a vezérlő tárolóablaka átveszi az egérrögzítést a vezérlő nevében.

CWnd* SetCapture();

Visszaadott érték

Egérbemenetet CWnd korábban kapott ablakobjektum mutatója.

Megjegyzések

Ha a vezérlő aktiválva van és ablak nélküli, ez a függvény azt eredményezi, hogy a vezérlő tárolóablaka átveszi az egérrögzítést a vezérlő nevében. Ellenkező esetben ez a függvény azt eredményezi, hogy maga a vezérlő veszi birtokba az egérrögzítést (ugyanaz, mint CWnd::SetCapture).

COleControl::SetControlSize

Beállítja az OLE vezérlőablak méretét, és értesíti a tárolót arról, hogy a vezérlőhely módosul.

BOOL SetControlSize(int cx, int cy);

Paraméterek

Cx
A vezérlőelem új szélességét adja meg képpontban.

Cy
A vezérlőelem új magasságát adja meg képpontban.

Visszaadott érték

Nonzero, ha a hívás sikeres volt; egyéb esetben 0.

Megjegyzések

Ez a függvény nem használható a vezérlő konstruktorában.

Vegye figyelembe, hogy a vezérlőablakok összes koordinátája a vezérlőelem bal felső sarkához viszonyítva van.

COleControl::SetEnabled

Beállítja a vezérlőelem engedélyezett tulajdonságértékét.

void SetEnabled(BOOL bEnabled);

Paraméterek

bEnabled
IGAZ, ha a vezérlő engedélyezve van; egyéb esetben HAMIS.

Megjegyzések

A tulajdonság beállítása után a rendszer OnEnabledChange meghívja.

COleControl::SetFocus

Ez azt eredményezi, hogy a vezérlő tárolóablaka átveszi a vezérlő nevében lévő bemeneti fókuszt.

CWnd* SetFocus();

Visszaadott érték

Mutató arra az CWnd ablakobjektumra, amely korábban a bemeneti fókuszt tartalmazta, vagy NULL értékű, ha nincs ilyen ablak.

Megjegyzések

Ha a vezérlő aktiválva van és ablak nélküli, ez a függvény azt eredményezi, hogy a vezérlő tárolóablaka átveszi a bemeneti fókuszt a vezérlő nevében. A bemeneti fókusz a billentyűzet bemenetét a tároló ablakára irányítja, és a tároló minden további billentyűzetüzenetet elküld a hívást kezdeményező SetFocusOLE objektumnak. A korábban a bemeneti fókuszt tartalmazó összes ablak elveszíti azt.

Ha a vezérlő nem ablak nélküli, ez a függvény azt eredményezi, hogy maga a vezérlő veszi birtokba a bemeneti fókuszt (ugyanaz, mint CWnd::SetFocus).

COleControl::SetFont

Beállítja a vezérlőelem stock Font tulajdonságát.

void SetFont(LPFONTDISP pFontDisp);

Paraméterek

pFontDisp
Mutató egy betűtípus-küldő felületre.

COleControl::SetForeColor

Beállítja a vezérlőelem foreColor tulajdonságértékét.

void SetForeColor(OLE_COLOR dwForeColor);

Paraméterek

dwForeColor
A vezérlőelem előtérrajzolásához használandó OLE_COLOR érték.

Megjegyzések

A tulajdonság és más kapcsolódó tulajdonságok használatáról további információt az ActiveX-vezérlők: Tulajdonságok című cikkben talál.

COleControl::SetInitialDataFormats

A keretrendszer meghívta a vezérlő által támogatott adatformátumok listájának inicializálására.

virtual void SetInitialDataFormats();

Megjegyzések

Az alapértelmezett implementáció két formátumot határoz meg: CF_METAFILEPICT és az állandó tulajdonságkészletet.

COleControl::SetInitialSize

Beállítja egy OLE-vezérlő méretét, amikor először megjelenik egy tárolóban.

void SetInitialSize(
    int cx,
    int cy);

Paraméterek

Cx
Az OLE vezérlő kezdeti szélessége képpontban.

Cy
Az OLE vezérlő kezdeti magassága képpontban.

Megjegyzések

Hívja meg ezt a függvényt a konstruktorban a vezérlő kezdeti méretének beállításához. A kezdeti méretet eszközegységekben vagy képpontokban méri a rendszer. Ajánlott ezt a hívást a vezérlő konstruktorában kezdeményezni.

COleControl::SetModifiedFlag

Módosítja a vezérlőelem módosított állapotát.

void SetModifiedFlag(BOOL bModified = TRUE);

Paraméterek

bModified
A vezérlő módosított jelzőjének új értéke. AZ IGAZ érték azt jelzi, hogy a vezérlő állapota módosult; A HAMIS azt jelzi, hogy a vezérlő állapota most lett mentve.

Megjegyzések

Hívja meg ezt a függvényt, ha olyan változás történik, amely hatással lenne a vezérlő állandó állapotára. Ha például egy állandó tulajdonság értéke megváltozik, akkor ezt a függvényt bModifiedTRUE értékkel hívja meg.

COleControl::SetNotPermitted

Azt jelzi, hogy egy szerkesztési kérelem meghiúsult.

void SetNotPermitted();

Megjegyzések

Hívja meg ezt a függvényt, ha BoundPropertyRequestEdit nem sikerül. Ez a függvény kivételt jelez a típustól COleDispScodeException , amely azt jelzi, hogy a beállított művelet nem volt engedélyezett.

COleControl::SetNotSupported

Megakadályozza, hogy a felhasználó módosítsa a vezérlő tulajdonságértékét.

void SetNotSupported();

Megjegyzések

Hívja meg ezt a függvényt bármely olyan tulajdonság Set függvénye helyett, ahol a tulajdonság értékének a vezérlő felhasználója általi módosítása nem támogatott. Ilyen lehet például egy csak olvasható tulajdonság.

COleControl::SetRectInContainer

Beállítja a vezérlő téglalapjának koordinátáit a tárolóhoz viszonyítva, eszközegységekben kifejezve.

BOOL SetRectInContainer(LPCRECT lpRect);

Paraméterek

lpRect
Mutató egy téglalapra, amely a vezérlő új koordinátáit tartalmazza a tárolóhoz képest.

Visszaadott érték

Nonzero, ha a hívás sikeres volt; egyéb esetben 0.

Megjegyzések

Ha a vezérlő nyitva van, a rendszer átméretezi; ellenkező esetben a tároló függvényének meghívása OnPosRectChanged történik.

COleControl::SetText

Beállítja a vezérlőelem árfolyama, a Caption vagy a Text tulajdonság értékét.

void SetText(LPCTSTR pszText);

Paraméterek

pszText
Egy karaktersztringre mutató mutató.

Megjegyzések

Vegye figyelembe, hogy a készlet felirat- és szövegtulajdonságai is ugyanahhoz az értékhez vannak megfeleltetve. Ez azt jelenti, hogy az egyik tulajdonságon végzett módosítások automatikusan mindkét tulajdonságot megváltoztatják. Általánosságban elmondható, hogy a vezérlőelemnek támogatnia kell a stock Caption vagy Text tulajdonságot, de mindkettőt nem.

COleControl::ThrowError

Egy hiba előfordulását jelzi a vezérlőben.

void ThrowError(
    SCODE sc,
    UINT nDescriptionID,
    UINT nHelpID = -1);

void ThrowError(
    SCODE sc,
    LPCTSTR pszDescription = NULL,
    UINT nHelpID = 0);

Paraméterek

Sc
A jelenteni kívánt állapotkód értéke. A lehetséges kódok teljes listáját az ActiveX-vezérlők: Speciális témakörök című cikkben találja.

nDescriptionID
A jelenteni kívánt kivétel sztringerőforrás-azonosítója.

nHelpID
A jelenteni kívánt témakör súgóazonosítója.

pszDescription
A jelenteni kívánt kivétel magyarázatát tartalmazó sztring.

Megjegyzések

Ezt a függvényt csak egy OLE tulajdonság Get vagy Set függvényéből vagy egy OLE automatizálási módszer implementálásából lehet meghívni. Ha más időpontokban előforduló hibákat kell jeleznie, akkor a készlet hibaeseményét kell elindítania.

COleControl::TransformCoords

Átalakítja a HIMETRIC-egységek és a tároló natív egységei közötti koordináta-értékeket.

void TransformCoords(
    POINTL* lpptlHimetric,
    POINTF* lpptfContainer,
    DWORD flags);

Paraméterek

lpptlHimetric
Mutató a POINTL HIMETRIC egységek koordinátáit tartalmazó struktúrára.

lpptfContainer
Mutató a POINTF tároló egységméretében lévő koordinátákat tartalmazó szerkezetre.

flags
A következő értékek kombinációja:

  • XFORMCOORDS_POSITION A pozíció a tárolóban.

  • XFORMCOORDS_SIZE Egy méret a tárolóban.

  • XFORMCOORDS_HIMETRICTOCONTAINER HIMETRIC-egységek átalakítása a tároló egységeivé.

  • XFORMCOORDS_CONTAINERTOHIMETRIC Átalakítsa a tároló egységeit HIMETRIC-egységekké.

Megjegyzések

Az első két jelző , XFORMCOORDS_POSITION és XFORMCOORDS_SIZE jelzi, hogy a koordinátákat pozícióként vagy méretként kell-e kezelni. A többi két jelző jelzi az átalakítás irányát.

COleControl::TranslateColor

Színértéket konvertál a OLE_COLOR adattípusból a COLORREF adattípusba.

COLORREF TranslateColor(
    OLE_COLOR clrColor,
    HPALETTE hpal = NULL);

Paraméterek

clrColor
Egy OLE_COLOR adattípus. További információ: Windows OleTranslateColor függvény.

hpal
Fogópont egy választható palettához; null értékű lehet.

Visszaadott érték

RGB (piros, zöld, kék) 32 bites színérték, amely meghatározza az eszköz által képviselhető clrColor értékhez legközelebbi egyszínű színt.

Megjegyzések

Ez a függvény hasznos a ForeColor és a BackColor készlet tulajdonságainak a CDC tagfüggvények által használt COLORREF típusokká történő fordításához.

COleControl::WillAmbientsBeValidDuringLoad

Meghatározza, hogy a vezérlő a környezeti tulajdonságok értékeit használja-e alapértelmezett értékként, amikor az később betöltődik az állandó állapotából.

BOOL WillAmbientsBeValidDuringLoad();

Visszaadott érték

A Nonzero azt jelzi, hogy a környezeti tulajdonságok érvényesek lesznek; ellenkező esetben a környezeti tulajdonságok érvénytelenek lesznek.

Megjegyzések

Egyes tárolókban előfordulhat, hogy a vezérlő nem fér hozzá a környezeti tulajdonságaihoz a felülbírálás első hívása COleControl::DoPropExchangesorán. Ez a helyzet akkor, ha a tároló meghívja az IPersistStreamInit::Load vagy IPersistStorage::Load to calling IOleObject::SetClientSite (vagyis ha nem tartja tiszteletben a OLEMISC_SETCLIENTSITEFIRST állapotbitet).

COleControl::WindowProc

Windows-eljárást biztosít egy COleControl objektumhoz.

virtual LRESULT WindowProc(
    UINT message,
    WPARAM wParam,
    LPARAM lParam);

Paraméterek

üzenet
Megadja a feldolgozandó Windows-üzenetet.

wParam
További információt nyújt az üzenet feldolgozásához. A paraméter értéke az üzenettől függ.

lParam
További információt nyújt az üzenet feldolgozásához. A paraméter értéke az üzenettől függ.

Visszaadott érték

A kézbesített üzenet visszatérési értéke.

Megjegyzések

Hívja meg ezt a függvényt, hogy adott üzeneteket küldjön a vezérlő üzenettérképén keresztül.

Lásd még

MFC-minta CIRC3
MFC-minta TESTHELP
COlePropertyPage osztály
CWnd osztály
hierarchiadiagram
CFontHolder osztály
CPictureHolder osztály