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


COleServerItem 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.

Biztosítja a kiszolgálói felületet az OLE-elemekhez.

Szemantika

class COleServerItem : public CDocItem

Tagok

Védett konstruktorok

Név Description
COleServerItem::COleServerItem Egy COleServerItem objektumot hoz létre.

Nyilvános metódusok

Név Description
COleServerItem::AddOtherClipboardData Bemutató- és konvertálási formátumokat helyez el egy COleDataSource objektumban.
COleServerItem::CopyToClipboard Másolja az elemet a vágólapra.
COleServerItem::D oDragDrop Húzási műveletet hajt végre.
COleServerItem::GetClipboardData Lekéri az adatforrást az adatátvitelhez (húzással vagy vágólaptal).
COleServerItem::GetDocument Az elemet tartalmazó kiszolgálódokumentumot adja vissza.
COleServerItem::GetEmbedSourceData Lekéri egy OLE-elem CF_EMBEDSOURCE adatait.
COleServerItem::GetItemName Az elem nevét adja vissza. Csak csatolt elemekhez használható.
COleServerItem::GetLinkSourceData Lekéri egy OLE-elem CF_LINKSOURCE adatait.
COleServerItem::GetObjectDescriptorData Lekéri egy OLE-elem CF_OBJECTDESCRIPTOR adatait.
COleServerItem::IsConnected Azt jelzi, hogy az elem jelenleg aktív tárolóhoz van-e csatolva.
COleServerItem::IsLinkedItem Azt jelzi, hogy az elem csatolt OLE-elemet jelöl-e.
COleServerItem::NotifyChanged Automatikus hivatkozásfrissítéssel frissíti az összes tárolót.
COleServerItem::OnDoVerb Egy ige végrehajtására van meghívva.
COleServerItem::OnDraw Akkor hívja meg a rendszer, amikor a tároló kéri az elem lehívását; implementálásra van szükség.
COleServerItem::OnDrawEx Speciális elemrajzot kért.
COleServerItem::OnGetClipboardData A keretrendszer meghívta, hogy lekérje a vágólapra másolandó adatokat.
COleServerItem::OnGetExtent A keretrendszer meghívta az OLE-elem méretét.
COleServerItem::OnInitFromData A keretrendszer meghívta, hogy inicializáljon egy OLE-elemet a megadott adatátviteli objektum tartalmával.
COleServerItem::OnQueryUpdateItems Meghívva annak meghatározására, hogy a csatolt elemeknek frissítésre van-e szükségük.
COleServerItem::OnRenderData Késleltetett renderelés részeként kéri le az adatokat.
COleServerItem::OnRenderFileData Adatokat kér le egy CFile objektumba a késleltetett renderelés részeként.
COleServerItem::OnRenderGlobalData Adatokat kér le egy HGLOBAL-fájlba a késleltetett renderelés részeként.
COleServerItem::OnSetColorScheme Az elem színséma beállításához hívva.
COleServerItem::OnSetData Az elem adatainak beállításához hívva.
COleServerItem::OnSetExtent A keretrendszer meghívta az OLE-elem méretének beállításához.
COleServerItem::OnUpdate Akkor hívható meg, ha a dokumentum egy része megváltozik, amelyben az elem szerepel.
COleServerItem::OnUpdateItems A kiszolgálói dokumentum összes elemének bemutató-gyorsítótárának frissítésére van meghívva.
COleServerItem::SetItemName Beállítja az elem nevét. Csak csatolt elemekhez használható.

Védett metódusok

Név Description
COleServerItem::GetDataSource Lekéri a konvertálási formátumok tárolásához használt objektumot.
COleServerItem::OnHide A keretrendszer meghívta, hogy elrejtse az OLE-elemet.
COleServerItem::OnOpen A keretrendszer meghívta, hogy megjelenítse az OLE-elemet a saját felső szintű ablakában.
COleServerItem::OnShow Akkor hívja meg a rendszer, amikor a tároló az elem megjelenítését kéri.

Nyilvános adatok tagjai

Név Description
COleServerItem::m_sizeExtent Tájékoztatja a kiszolgálót arról, hogy az OLE-elem mekkora része látható.

Megjegyzések

A csatolt elemek egy kiszolgálói dokumentum egy részét vagy egészét jelölhetik. A beágyazott elemek mindig egy teljes kiszolgálódokumentumot jelölnek.

Az COleServerItem osztály számos felülbírálható tagfüggvényt határoz meg, amelyeket az OLE rendszer dinamikus csatolású kódtárai (DLL-ek) hívnak meg, általában a tárolóalkalmazásból érkező kérésekre válaszolva. Ezek a tagfüggvények lehetővé teszik, hogy a tárolóalkalmazás közvetetten, különböző módokon manipulálja az elemet, például megjelenítse, végrehajtsa az igesorait, vagy különböző formátumokban lekérte az adatokat.

A használathoz COleServerItemszármaztathat belőle egy osztályt, és implementálhatja az OnDraw és a Szerializálás tagfüggvényeket. A OnDraw függvény egy elem metafájl-ábrázolását biztosítja, amely lehetővé teszi, hogy megjelenjen, amikor egy tárolóalkalmazás megnyit egy összetett dokumentumot. A Serialize függvény CObject egy elem natív megjelenítését biztosítja, lehetővé téve a beágyazott elemek átvitelét a kiszolgáló és a tárolóalkalmazások között. Az OnGetExtent megadja az elem természetes méretét a tárolónak, lehetővé téve a tároló számára az elem méretének beállítását.

A kiszolgálókról és a kapcsolódó témakörökről további információt a Tárolók: Speciális szolgáltatások című cikkben talál a Kiszolgálók: Kiszolgáló implementálása és a "Tároló/kiszolgálóalkalmazás létrehozása" című cikkben.

Öröklési hierarchia

CObject

CCmdTarget

CDocItem

COleServerItem

Requirements

Fejléc: afxole.h

COleServerItem::AddOtherClipboardData

A függvény meghívásával helyezze el az OLE-elem bemutató- és konvertálási formátumát a megadott COleDataSource objektumban.

void AddOtherClipboardData(COleDataSource* pDataSource);

Paraméterek

pDataSource
Mutasson arra az COleDataSource objektumra, amelyben az adatokat el kell helyezni.

Megjegyzések

Az onDraw tagfüggvényt implementálva kell megadnia az elem bemutatóformátumát (metafájlképét). Más konvertálási formátumok támogatásához regisztrálja őket a GetDataSource által visszaadott COleDataSource objektummal, és felülbírálja az OnRenderData tagfüggvényt, hogy az adatokat a támogatni kívánt formátumokban adja meg.

COleServerItem::COleServerItem

Létrehoz egy COleServerItem objektumot, és hozzáadja azt a kiszolgálódokumentum dokumentumelem-gyűjteményéhez.

COleServerItem(
    COleServerDoc* pServerDoc,
    BOOL bAutoDelete);

Paraméterek

pServerDoc
Mutasson az új elemet tartalmazó dokumentumra.

bAutoDelete
Jelző, amely azt jelzi, hogy az objektum törölhető-e, ha egy hivatkozás ki van adva. Állítsa ezt HAMIS értékre, ha az COleServerItem objektum a dokumentum adatainak szerves része, amelyet törölnie kell. Állítsa ezt IGAZ értékre, ha az objektum egy másodlagos struktúra, amellyel azonosíthatja a dokumentum adatainak egy tartományát, amelyet a keretrendszer törölhet.

COleServerItem::CopyToClipboard

Hívja meg ezt a függvényt az OLE elem vágólapra másolásához.

void CopyToClipboard(BOOL bIncludeLink = FALSE);

Paraméterek

bIncludeLink
Állítsa ezt IGAZ értékre, ha a csatolási adatokat a vágólapra kell másolni. Állítsa ezt HAMIS értékre, ha a kiszolgálóalkalmazás nem támogatja a hivatkozásokat.

Megjegyzések

A függvény az OnGetClipboardData tagfüggvény használatával hoz létre egy COleDataSource objektumot, amely az OLE-elem adatait tartalmazza a támogatott formátumokban. A függvény ezután a COleDataSourceCOleDataSource::SetClipboard függvénnyel helyezi el az objektumot a vágólapon. Az COleDataSource objektum tartalmazza az elem natív adatait és CF_METAFILEPICT formátumú megjelenítését, valamint a támogatott konverziós formátumok adatait. A tagfüggvény működéséhez szerializálást és OnDraw-t kell implementálnia.

COleServerItem::D oDragDrop

Hívja meg a DoDragDrop tagfüggvényt húzási művelet végrehajtásához.

DROPEFFECT DoDragDrop(
    LPCRECT lpRectItem,
    CPoint ptOffset,
    BOOL bIncludeLink = FALSE,
    DWORD dwEffects = DROPEFFECT_COPY | DROPEFFECT_MOVE,
    LPCRECT lpRectStartDrag = NULL);

Paraméterek

lpRectItem
Az elem téglalapja a képernyőn képpontban, az ügyfélterülethez viszonyítva.

ptOffset
A lpItemRect eltolása, ahol az egér pozíciója a húzás idején volt.

bIncludeLink
Állítsa ezt IGAZ értékre, ha a csatolási adatokat a vágólapra kell másolni. Állítsa HAMIS értékre, ha az alkalmazás nem támogatja a hivatkozásokat.

dwEffects
Meghatározza azokat az effektusokat, amelyeket a húzási forrás engedélyez az húzási műveletben (a Másolás, áthelyezés és csatolás kombinációját).

lpRectStartDrag
Mutasson arra a téglalapra, amely meghatározza a húzás tényleges indításának helyét. További információkért lásd a következő Megjegyzések szakaszt.

Visszaadott érték

A DROPEFFECT enumerálásából származó érték. Ha DROPEFFECT_MOVE, az eredeti adatokat el kell távolítani.

Megjegyzések

A húzási művelet nem indul el azonnal. Megvárja, amíg az egérmutató elhagyja az lpRectStartDrag által megadott téglalapot, vagy amíg egy megadott számú ezredmásodperc el nem telik. Ha az lpRectStartDrag értéke NULL, a rendszer egy alapértelmezett téglalapot használ, hogy az egérmutató egy képpont mozgatásakor elinduljon.

A késleltetési időt egy beállításkulcs-beállítás határozza meg. A késleltetési időt a CWinApp::WriteProfileString vagy a CWinApp::WriteProfileInt meghívásával módosíthatja. Ha nem adja meg a késleltetési időt, a rendszer 200 ezredmásodperc alapértelmezett értéket használ. Az húzási késleltetési idő a következőképpen lesz tárolva:

  • A Windows NT húzási késleltetési ideje a \Windows\DragDelay HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\NT\CurrentVersion\IniFileMapping\win.initárolja.

  • A Windows 3.x húzási késleltetési ideje a WIN-ben van tárolva. INI-fájl, a [Windows} szakasz alatt.

  • A Windows 95/98 húzza a késleltetési időt a WIN gyorsítótárazott verziójában tárolja. INI.

További információ az húzással kapcsolatos késleltetési információk beállításjegyzékben vagy a beállításjegyzékben való tárolásáról. INI-fájl: WriteProfileString a Windows SDK-ban.

COleServerItem::GetClipboardData

Hívja meg ezt a függvényt, hogy töltse ki a megadott COleDataSource objektumot a vágólapra másolt összes adattal, ha a CopyToClipboard nevet használja (ugyanezek az adatok a DoDragDrop meghívása esetén is át lesznek adva).

void GetClipboardData(
    COleDataSource* pDataSource,
    BOOL bIncludeLink = FALSE,
    LPPOINT lpOffset = NULL,
    LPSIZE lpSize = NULL);

Paraméterek

pDataSource
Mutasson arra az COleDataSource objektumra, amely minden támogatott formátumban megkapja az OLE-elem adatait.

bIncludeLink
IGAZ, ha a csatolási adatokat a vágólapra kell másolni. HAMIS, ha a kiszolgálóalkalmazás nem támogatja a hivatkozásokat.

lpOffset
Az egérmutató eltolása képpontban az objektum forrásától.

lpSize
Az objektum mérete képpontban.

Megjegyzések

Ez a függvény meghívja a GetEmbedSourceData tagfüggvényt az OLE elem natív adatainak lekéréséhez, és meghívja az AddOtherClipboardData tagfüggvényt a bemutató formátum és a támogatott konvertálási formátumok lekéréséhez. Ha a bIncludeLink ÉRTÉKE IGAZ, a függvény a GetLinkSourceData-t is meghívja az elem hivatkozási adatainak lekéréséhez.

Felülbírálja ezt a függvényt, ha a formátumokat az COleDataSource objektumban a megadott CopyToClipboardformátumok elé vagy mögé szeretné helyezni.

COleServerItem::GetDataSource

Hívja meg ezt a függvényt a kiszolgálóalkalmazás által támogatott konvertálási formátumok tárolásához használt COleDataSource objektum lekéréséhez.

COleDataSource* GetDataSource();

Visszaadott érték

A konvertálási COleDataSource formátumok tárolásához használt objektumra mutató mutató.

Megjegyzések

Ha azt szeretné, hogy a kiszolgálóalkalmazás különböző formátumban kínáljon adatokat az adatátviteli műveletek során, regisztrálja ezeket a formátumokat a COleDataSource függvény által visszaadott objektummal. Ha például az OLE elem CF_TEXT ábrázolását szeretné megadni a vágólaphoz vagy a húzási műveletekhez, akkor a formátumot a függvény által visszaadott objektummal COleDataSource regisztrálja, majd felülbírálja a OnRenderXxxData tagfüggvényt az adatok megadásához.

COleServerItem::GetDocument

Hívja meg ezt a függvényt, hogy mutatót kapjon az elemet tartalmazó dokumentumhoz.

COleServerDoc* GetDocument() const;

Visszaadott érték

Mutató az elemet tartalmazó dokumentumra; NULL érték, ha az elem nem része a dokumentumnak.

Megjegyzések

Ez lehetővé teszi a konstruktor számára argumentumként COleServerItem átadott kiszolgálói dokumentum elérését.

COleServerItem::GetEmbedSourceData

Hívja meg ezt a függvényt egy OLE-elem CF_EMBEDSOURCE adatainak lekéréséhez.

void GetEmbedSourceData(LPSTGMEDIUM lpStgMedium);

Paraméterek

lpStgMedium
Mutasson arra az STGMEDIUM-struktúrára , amely megkapja az OLE elem CF_EMBEDSOURCE adatait.

Megjegyzések

Ez a formátum tartalmazza az elem natív adatait. Ahhoz, hogy a függvény megfelelően működjön, végre kell hajtania a Serialize tagfüggvényt.

Az eredmény ezután hozzáadható egy adatforráshoz a COleDataSource::CacheData használatával. Ezt a függvényt a COleServerItem automatikusan meghívja::OnGetClipboardData.

További információ: STGMEDIUM a Windows SDK-ban.

COleServerItem::GetItemName

Hívja meg ezt a függvényt az elem nevének lekéréséhez.

const CString& GetItemName() const;

Visszaadott érték

A cikk neve.

Megjegyzések

Ezt a függvényt általában csak csatolt elemek esetén hívja meg.

COleServerItem::GetLinkSourceData

Hívja meg ezt a függvényt egy OLE-elem CF_LINKSOURCE adatainak lekéréséhez.

BOOL GetLinkSourceData(LPSTGMEDIUM lpStgMedium);

Paraméterek

lpStgMedium
Mutasson arra az STGMEDIUM-struktúrára , amely megkapja az OLE elem CF_LINKSOURCE adatait.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ez a formátum tartalmazza az OLE elem típusát leíró CLSID azonosítót és az OLE-elemet tartalmazó dokumentum megkereséséhez szükséges információkat.

Az eredmény ezután hozzáadható egy adatforráshoz a COleDataSource::CacheData használatával. Ezt a függvényt az OnGetClipboardData automatikusan meghívja.

További információ: STGMEDIUM a Windows SDK-ban.

COleServerItem::GetObjectDescriptorData

Hívja meg ezt a függvényt egy OLE-elem CF_OBJECTDESCRIPTOR adatainak lekéréséhez.

void GetObjectDescriptorData(
    LPPOINT lpOffset,
    LPSIZE lpSize,
    LPSTGMEDIUM lpStgMedium);

Paraméterek

lpOffset
Az egérgomb eltolása az OLE elem bal felső sarkából. Null érték is lehet.

lpSize
Az OLE elem mérete. Null érték is lehet.

lpStgMedium
Mutasson arra az STGMEDIUM-struktúrára , amely megkapja az OLE elem CF_OBJECTDESCRIPTOR adatait.

Megjegyzések

Az információt az STGMEDIUMlpStgMedium által mutatott struktúrába másolja. Ez a formátum tartalmazza a Speciális beillesztés párbeszédpanelhez szükséges információkat.

További információ: STGMEDIUM a Windows SDK-ban.

COleServerItem::IsConnected

Hívja meg ezt a függvényt annak megtekintéséhez, hogy az OLE elem csatlakoztatva van-e.

BOOL IsConnected() const;

Visszaadott érték

Nemzero, ha az elem csatlakoztatva van; egyéb esetben 0.

Megjegyzések

Az OLE-elemek akkor tekinthetők összekapcsoltnak, ha egy vagy több tároló hivatkozik az elemre. Egy elem akkor csatlakozik, ha a hivatkozási száma 0-nál nagyobb, vagy beágyazott elem.

COleServerItem::IsLinkedItem

Hívja meg ezt a függvényt annak megtekintéséhez, hogy az OLE elem csatolt elem-e.

BOOL IsLinkedItem() const;

Visszaadott érték

Nem érvényes, ha az elem csatolt elem; egyéb esetben 0.

Megjegyzések

A rendszer csatol egy elemet, ha az elem érvényes, és nem szerepel a dokumentum beágyazott elemeinek listájában. Előfordulhat, hogy egy csatolt elem csatlakoztatva van egy tárolóhoz.

Gyakori, hogy ugyanazt az osztályt használja a csatolt és a beágyazott elemekhez is. IsLinkedItem Lehetővé teszi, hogy a csatolt elemek másképp viselkedjenek, mint a beágyazott elemek, bár a kód sokszor gyakori.

COleServerItem::m_sizeExtent

Ez a tag közli a kiszolgálóval, hogy az objektum mekkora része látható a tárolódokumentumban.

CSize m_sizeExtent;

Megjegyzések

Az OnSetExtent alapértelmezett implementációja beállítja ezt a tagot.

COleServerItem::NotifyChanged

A függvény meghívása a csatolt elem módosítása után.

void NotifyChanged(DVASPECT nDrawAspect = DVASPECT_CONTENT);

Paraméterek

nDrawAspect
A DVASPECT enumerálásából származó érték, amely azt jelzi, hogy az OLE elem mely eleme módosult. Ez a paraméter a következő értékek bármelyikével rendelkezhet:

  • DVASPECT_CONTENT Elem úgy van ábrázolva, hogy beágyazott objektumként jelenjen meg a tárolóban.

  • DVASPECT_THUMBNAIL Elem "miniatűr" ábrázolásban jelenik meg, hogy megjeleníthető legyen egy böngészési eszközben.

  • DVASPECT_ICON elemet egy ikon jelöli.

  • DVASPECT_DOCPRINT Elem úgy jelenik meg, mintha a Fájl menü Nyomtatás parancsával lett volna kinyomtatva.

Megjegyzések

Ha egy tárolóelem automatikus hivatkozással van csatolva a dokumentumhoz, az elem frissül a módosításoknak megfelelően. A Microsoft Foundation osztálykönyvtárával írt tárolóalkalmazásokban a COleClientItem::OnChange meghívása válaszként történik.

COleServerItem::OnDoVerb

A keretrendszer meghívta a megadott igét.

virtual void OnDoVerb(LONG iVerb);

Paraméterek

iVerb
A végrehajtandó igét adja meg. Az alábbiak bármelyike lehet:

Érték Meaning Szimbólum
0 Elsődleges ige OLEIVERB_PRIMARY
1 Másodlagos ige (Nincs)
- 1 Elem megjelenítése szerkesztéshez OLEIVERB_SHOW
- 2 Elem szerkesztése külön ablakban OLEIVERB_OPEN
- 3 Elem elrejtése OLEIVERB_HIDE

A -1 érték általában egy másik ige aliasa. Ha a megnyitott szerkesztés nem támogatott, -2 hatása megegyezik a -1-ével. További értékekért lásd: IOleObject::D oVerb a Windows SDK-ban.

Megjegyzések

Ha a tárolóalkalmazás a Microsoft Foundation osztálykönyvtárával lett megírva, a függvény a COleClientItem::Activate member függvény meghívásakor COleClientItem lesz meghívva. Az alapértelmezett implementáció meghívja az OnShow tagfüggvényt, ha az elsődleges igét vagy OLEIVERB_SHOW meg van adva, az OnOpen parancsot, ha a másodlagos igét vagy OLEIVERB_OPEN van megadva, és az OnHide függvényt, ha OLEIVERB_HIDE van megadva. Az alapértelmezett implementálási hívások OnShow , ha az iVerb nem tartozik a fent felsorolt igék közé.

Bírálja felül ezt a függvényt, ha az elsődleges ige nem jeleníti meg az elemet. Ha például az elem egy hangrögzítés, és az elsődleges ige a Lejátszás, akkor nem kell megjelenítenie a kiszolgálóalkalmazást az elem lejátszásához.

További információ: IOleObject::D oVerb a Windows SDK-ban.

COleServerItem::OnDraw

A keretrendszer meghívta, hogy az OLE-elemet metafájlba renderelje.

virtual BOOL OnDraw(
    CDC* pDC,
    CSize& rSize) = 0;

Paraméterek

Pdc
Egy mutató arra a CDC-objektumra , amelyre az elemet meg szeretné rajzolni. A megjelenítési környezet automatikusan csatlakozik az attribútummegjelenítési környezethez, így attribútumfüggvényeket hívhat meg, bár ez eszközspecifikussá tenné a metafájlt.

rSize
Méret, HIMETRIC egységekben, amelyben a metafájlt meg kell rajzolni.

Visszaadott érték

Nonzero, ha az elemet sikeresen megrajzolták; egyéb esetben 0.

Megjegyzések

Az OLE elem metafájl-ábrázolása az elem tárolóalkalmazásban való megjelenítésére szolgál. Ha a tárolóalkalmazás a Microsoft Foundation osztálykönyvtárával lett megírva, a metafájlt a megfelelő COleClientItem objektum Rajz tagfüggvénye használja. Nincs alapértelmezett implementáció. Felül kell bírálnia ezt a függvényt, hogy az elemet a megadott eszközkörnyezetbe húzza.

COleServerItem::OnDrawEx

A keretrendszer meghívja az összes rajzot.

virtual BOOL OnDrawEx(
    CDC* pDC,
    DVASPECT nDrawAspect,
    CSize& rSize);

Paraméterek

Pdc
Egy mutató arra a CDC-objektumra , amelyre az elemet meg szeretné rajzolni. A tartományvezérlő automatikusan csatlakozik a DC attribútumhoz, így attribútumfüggvényeket hívhat meg, bár ezzel eszközspecifikussá tenné a metafájlt.

nDrawAspect
A DVASPECT enumerálásából származó érték. Ez a paraméter a következő értékek bármelyikével rendelkezhet:

  • DVASPECT_CONTENT Elem úgy van ábrázolva, hogy beágyazott objektumként jelenjen meg a tárolóban.

  • DVASPECT_THUMBNAIL Elem "miniatűr" ábrázolásban jelenik meg, hogy megjeleníthető legyen egy böngészési eszközben.

  • DVASPECT_ICON elemet egy ikon jelöli.

  • DVASPECT_DOCPRINT Elem úgy jelenik meg, mintha a Fájl menü Nyomtatás parancsával lett volna kinyomtatva.

rSize
Az elem mérete HIMETRIC egységekben.

Visszaadott érték

Nonzero, ha az elemet sikeresen megrajzolták; egyéb esetben 0.

Megjegyzések

Az alapértelmezett implementáció akkor hívja meg a hívásokat OnDraw , ha a DVASPECT egyenlő DVASPECT_CONTENT; ellenkező esetben sikertelen.

A függvény felülbírálása a bemutatóadatok DVASPECT_CONTENT, például DVASPECT_ICON vagy DVASPECT_THUMBNAIL megjelenítéséhez.

COleServerItem::OnGetClipboardData

A keretrendszer meghívta egy COleDataSource objektum lekérésére, amely tartalmazza az összes adatot, amelyet a CopyToClipboard tagfüggvény hívása a vágólapra helyezne.

virtual COleDataSource* OnGetClipboardData(
    BOOL bIncludeLink,
    LPPOINT lpOffset,
    LPSIZE lpSize);

Paraméterek

bIncludeLink
Állítsa ezt IGAZ értékre, ha a csatolási adatokat a vágólapra kell másolni. Állítsa ezt HAMIS értékre, ha a kiszolgálóalkalmazás nem támogatja a hivatkozásokat.

lpOffset
Az egérmutató eltolása az objektum forrásától képpontban.

lpSize
Az objektum mérete képpontban.

Visszaadott érték

Mutató a vágólap adatait tartalmazó COleDataSource-objektumra .

Megjegyzések

A függvény alapértelmezett implementációja a GetClipboardData meghívása.

COleServerItem::OnGetExtent

A keretrendszer meghívta az OLE-elem méretét HIMETRIC mértékegységben.

virtual BOOL OnGetExtent(
    DVASPECT nDrawAspect,
    CSize& rSize);

Paraméterek

nDrawAspect
Annak az OLE-elemnek a aspektusát adja meg, amelynek a határait le kell kérni. Ez a paraméter a következő értékek bármelyikével rendelkezhet:

  • DVASPECT_CONTENT Elem úgy van ábrázolva, hogy beágyazott objektumként jelenjen meg a tárolóban.

  • DVASPECT_THUMBNAIL Elem "miniatűr" ábrázolásban jelenik meg, hogy megjeleníthető legyen egy böngészési eszközben.

  • DVASPECT_ICON elemet egy ikon jelöli.

  • DVASPECT_DOCPRINT Elem úgy jelenik meg, mintha a Fájl menü Nyomtatás parancsával lett volna kinyomtatva.

rSize
Hivatkozás egy CSize olyan objektumra, amely megkapja az OLE elem méretét.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ha a tárolóalkalmazás a Microsoft Foundation osztálytárával lett megírva, akkor a rendszer ezt a függvényt hívja meg a megfelelő COleClientItem objektum GetExtent tagfüggvényének meghívásakor. Az alapértelmezett implementáció nem végez semmit. Ezt saját maga kell megvalósítania. Bírálja felül ezt a függvényt, ha speciális feldolgozást szeretne végezni az OLE-elem méretére vonatkozó kérések kezelésekor.

COleServerItem::OnHide

A keretrendszer meghívta, hogy elrejtse az OLE-elemet.

virtual void OnHide();

Megjegyzések

Az alapértelmezett hívások COleServerDoc::OnShowDocument( FALSE ). A függvény arról is értesíti a tárolót, hogy az OLE-elem el lett rejtve. Bírálja felül ezt a függvényt, ha speciális feldolgozást szeretne végrehajtani egy OLE-elem elrejtésekor.

COleServerItem::OnInitFromData

A keretrendszer meghívta, hogy inicializáljon egy OLE-elemet a pDataObject tartalmával.

virtual BOOL OnInitFromData(
    COleDataObject* pDataObject,
    BOOL bCreation);

Paraméterek

pDataObject
Mutasson egy OLE-adatobjektumra, amely különböző formátumú adatokat tartalmaz az OLE-elem inicializálásához.

bCreation
IGAZ, ha a függvény egy tárolóalkalmazás által újonnan létrehozott OLE-elem inicializálására van meghívva. HAMIS, ha a függvény egy már meglévő OLE-elem tartalmának cseréjére van meghívva.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ha a bCreation ÉRTÉKE IGAZ, akkor a függvény akkor lesz meghívva, ha egy tároló az aktuális kijelölés alapján implementálja az Új objektum beszúrása parancsot. A kiválasztott adatok az új OLE-elem létrehozásakor lesznek felhasználva. Ha például kijelöl egy cellatartományt egy számolótáblában, majd az Új objektum beszúrása paranccsal létrehoz egy diagramot a kijelölt tartomány értékei alapján. Az alapértelmezett implementáció nem végez semmit. Bírálja felül ezt a függvényt, hogy elfogadható formátumot válasszon a pDataObject által kínáltak közül, és inicializálja az OLE elemet a megadott adatok alapján. Ez egy speciális felülírható.

További információ: IOleObject::InitFromData a Windows SDK-ban.

COleServerItem::OnOpen

A keretrendszer meghívta, hogy az OLE-elemet a kiszolgálóalkalmazás egy külön példányában jelenítse meg ahelyett, hogy a helyükön állna.

virtual void OnOpen();

Megjegyzések

Az alapértelmezett implementáció aktiválja az OLE elemet tartalmazó dokumentumot megjelenítő első keretablakot; ha az alkalmazás minikiszolgáló, az alapértelmezett implementáció a főablakot jeleníti meg. A függvény arról is értesíti a tárolót, hogy az OLE-elem meg lett nyitva.

Bírálja felül ezt a függvényt, ha speciális feldolgozást szeretne végezni egy OLE-elem megnyitásakor. Ez különösen gyakori az olyan csatolt elemeknél, amelyek megnyitásakor a kijelölést a hivatkozásra szeretné állítani.

További információ: IOleClientSite::OnShowWindow a Windows SDK-ban.

COleServerItem::OnQueryUpdateItems

A keretrendszer meghívta, hogy megállapítsa, hogy az aktuális kiszolgálódokumentum csatolt elemei elavultak-e.

virtual BOOL OnQueryUpdateItems();

Visszaadott érték

Nonzero, ha a dokumentum olyan elemeket tartalmaz, amelyek frissítésre szorulnak; 0, ha az összes elem naprakész.

Megjegyzések

Egy elem elavult, ha a forrásdokumentuma módosult, de a csatolt elem nem lett frissítve a dokumentum változásainak megfelelően.

COleServerItem::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 az COleDataSource objektumban a DelayRenderData vagy a DelayRenderFileData tagfüggvény használatával a késleltetett rendereléshez. A függvény alapértelmezett implementációja meghívja az OnRenderFileData vagy az OnRenderGlobalData függvényt, ha a megadott tárolóeszköz fájl vagy memória. Ha egyik formátumot sem adja meg, az alapértelmezett implementáció 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 kiosztani és kitölteni. Ha nem TYMED_NULL, az STGMEDIUM-t a helyén kell kitölteni az adatokkal.

Ez egy speciális felülírható. 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ó : IDataObject::GetData, STGMEDIUM, FORMATETC és TYMED a Windows SDK-ban.

COleServerItem::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 objektumra mutat, CFile amelyben az adatokat renderelni kell.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

A megadott formátum egy korábban az COleDataSource objektumba a DelayRenderData tagfüggvényt használva késleltetett renderelés céljából. A függvény alapértelmezett implementációja egyszerűen HAMIS értéket ad vissza.

Ez egy speciális felülírható. 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ási adathordozót szeretne kezelni, bírálja felül az OnRenderData-t. Ha az adatok fájlban vagy változó méretűek, felülbírálhatja az OnRenderFileData fájlt.

További információ: IDataObject::GetData és FORMATETC a Windows SDK-ban.

COleServerItem::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 az COleDataSource objektumba a DelayRenderData tagfüggvényt használva késleltetett renderelés céljából. 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.

Ez egy speciális felülírható. 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ási adathordozót szeretne kezelni, bírálja felül az OnRenderData-t. Ha az adatok fájlban vagy változó méretűek, felülbírálhatja az OnRenderFileData fájlt.

További információ: IDataObject::GetData és FORMATETC a Windows SDK-ban.

COleServerItem::OnSetColorScheme

A keretrendszer meghívta, hogy adjon meg egy színpalettát, amelyet az OLE-elem szerkesztésekor kell használni.

virtual BOOL OnSetColorScheme(const LOGPALETTE* lpLogPalette);

Paraméterek

lpLogPalette
Mutasson egy Windows LOGPALETTE-struktúrára .

Visszaadott érték

Nemzero, ha a színpalettát használja; egyéb esetben 0.

Megjegyzések

Ha a tárolóalkalmazás a Microsoft Foundation osztálykönyvtárával lett megírva, a függvény akkor lesz meghívva, amikor meghívja a megfelelő COleClientItem objektum IOleObject::SetColorScheme függvényét. Az alapértelmezett implementáció HAMIS értéket ad vissza. Bírálja felül ezt a függvényt, ha az ajánlott palettát szeretné használni. A kiszolgálóalkalmazás nem szükséges a javasolt paletta használatához.

További információ: IOleObject::SetColorScheme a Windows SDK-ban.

COleServerItem::OnSetData

A keretrendszer meghívta, hogy cserélje le az OLE-elem 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
Azt jelzi, hogy ki rendelkezik a tárolási adathordozó tulajdonosával a függvényhívás befejezése után. A hívó dönti el, hogy ki felelős a tárolóeszköz nevében lefoglalt erőforrások felszabadításáért. A hívó ezt a bRelease beállításával teszi. Ha a bRelease nem aero, a kiszolgálóelem tulajdonjogot vesz fel, és felszabadítja a adathordozót, amikor befejezte a használatát. Ha a bRelease 0, a hívó megtartja a tulajdonjogot, és a kiszolgálóelem csak a hívás idejére használhatja a tárolóeszközt.

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

A kiszolgálóelem mindaddig nem veszi át az adatok tulajdonjogát, amíg sikeresen be nem szerezte azokat. Ez azt jelenti, hogy nem veszi át a tulajdonjogot, ha 0-t ad vissza. Ha az adatforrás tulajdonjogot vállal, felszabadítja a tárolóeszközt a ReleaseStgMedium függvény meghívásával.

Az alapértelmezett implementáció nem végez semmit. A függvény felülbírálása az OLE-elem adatainak a megadott adatokra való lecseréléséhez. Ez egy speciális felülírható.

További információ: STGMEDIUM, FORMATETC és ReleaseStgMedium a Windows SDK-ban.

COleServerItem::OnSetExtent

A keretrendszer meghívta, hogy tájékoztassa az OLE-elemet arról, hogy mennyi hely áll rendelkezésére a tárolódokumentumban.

virtual BOOL OnSetExtent(
    DVASPECT nDrawAspect,
    const CSize& size);

Paraméterek

nDrawAspect
Annak az OLE-elemnek a aspektusát adja meg, amelynek a határai meg vannak adva. Ez a paraméter a következő értékek bármelyikével rendelkezhet:

  • DVASPECT_CONTENT Elem úgy van ábrázolva, hogy beágyazott objektumként jelenjen meg a tárolóban.

  • DVASPECT_THUMBNAIL Elem "miniatűr" ábrázolásban jelenik meg, hogy megjeleníthető legyen egy böngészési eszközben.

  • DVASPECT_ICON elemet egy ikon jelöli.

  • DVASPECT_DOCPRINT Elem úgy jelenik meg, mintha a Fájl menü Nyomtatás parancsával lett volna kinyomtatva.

méret
Az OLE-elem új méretét meghatározó CSize-struktúra .

Visszaadott érték

Nonzero, ha sikeres; egyéb esetben 0.

Megjegyzések

Ha a tárolóalkalmazás a Microsoft Foundation osztálykönyvtárával lett megírva, a rendszer ezt a függvényt hívja meg a megfelelő COleClientItem objektum SetExtent tagfüggvényének meghívásakor. Az alapértelmezett implementáció a m_sizeExtent tagot a megadott méretre állítja, ha az nDrawAspect DVASPECT_CONTENT; ellenkező esetben 0 értéket ad vissza. Felülbírálja ezt a függvényt, hogy speciális feldolgozást végezzen az elem méretének módosításakor.

COleServerItem::OnShow

A keretrendszer meghívta, hogy utasítsa a kiszolgálóalkalmazást az OLE elem helyben való megjelenítésére.

virtual void OnShow();

Megjegyzések

Ezt a függvényt általában akkor hívjuk meg, ha a tárolóalkalmazás felhasználója létrehoz egy elemet, vagy végrehajt egy olyan parancsot( például Szerkesztés), amely megköveteli az elem megtekintését. Az alapértelmezett implementáció helyszíni aktiválást kísérel meg. Ha ez nem sikerül, a függvény meghívja a OnOpen tagfüggvényt, hogy külön ablakban jelenítse meg az OLE elemet.

Felülbírálja ezt a függvényt, ha speciális feldolgozást szeretne végezni, amikor megjelenik egy OLE-elem.

COleServerItem::OnUpdate

A keretrendszer meghívta egy elem módosításakor.

virtual void OnUpdate(
    COleServerItem* pSender,
    LPARAM lHint,
    CObject* pHint,
    DVASPECT nDrawAspect);

Paraméterek

pSender
Mutasson a dokumentumot módosító elemre. Null érték is lehet.

lHint
A módosítással kapcsolatos információkat tartalmaz.

pHint
Mutasson egy objektumra, amely a módosítással kapcsolatos információkat tárolja.

nDrawAspect
A DVASPECT enumerálásából származó érték. Ez a paraméter a következő értékek bármelyikével rendelkezhet:

  • DVASPECT_CONTENT Elem úgy van ábrázolva, hogy beágyazott objektumként jelenjen meg a tárolóban.

  • DVASPECT_THUMBNAIL Elem "miniatűr" ábrázolásban jelenik meg, hogy megjeleníthető legyen egy böngészési eszközben.

  • DVASPECT_ICON elemet egy ikon jelöli.

  • DVASPECT_DOCPRINT Elem úgy jelenik meg, mintha a Fájl menü Nyomtatás parancsával lett volna kinyomtatva.

Megjegyzések

Az alapértelmezett implementáció a NotifyChanged hívásokat hívja meg, függetlenül a tipptől vagy a feladótól.

COleServerItem::OnUpdateItems

A keretrendszer meghívta, hogy frissítse a kiszolgálódokumentum összes elemét.

virtual void OnUpdateItems();

Megjegyzések

Az alapértelmezett implementáció meghívja az UpdateLinket a dokumentum összes COleClientItem objektumához.

COleServerItem::SetItemName

Hívja meg ezt a függvényt, amikor létrehoz egy csatolt elemet a nevének beállításához.

void SetItemName(LPCTSTR lpszItemName);

Paraméterek

lpszItemName
Mutasson az elem új nevére.

Megjegyzések

A névnek egyedinek kell lennie a dokumentumban. Amikor egy kiszolgálóalkalmazást meghív egy csatolt elem szerkesztésére, az alkalmazás ezt a nevet használja az elem megkereséséhez. Beágyazott elemek esetén nem kell meghívnia ezt a függvényt.

Lásd még

MFC-minta HIERSVR
CDocItem osztály
hierarchiadiagram
COleClientItem osztály
COleServerDoc osztály
COleTemplateServer osztály