Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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.
Adattovábbításokhoz használható különböző formátumú adatok lekéréséhez a vágólapról, húzással vagy egy beágyazott OLE-elemből.
Szemantika
class COleDataObject
Tagok
Nyilvános konstruktorok
| Név | Description |
|---|---|
| COleDataObject::COleDataObject | Egy COleDataObject objektumot hoz létre. |
Nyilvános metódusok
| Név | Description |
|---|---|
| COleDataObject::Attach | Csatolja a megadott OLE-adatobjektumot a COleDataObject. |
| COleDataObject::AttachClipboard | Csatolja a vágólapon található adatobjektumot. |
| COleDataObject::BeginEnumFormats | Egy vagy több későbbi GetNextFormat hívásra készül. |
| COleDataObject::D etach | Leválasztja a társított IDataObject objektumot. |
| COleDataObject::GetData | Adatokat másol a csatolt OLE adatobjektumból egy megadott formátumban. |
| COleDataObject::GetFileData | A csatolt OLE adatobjektum adatainak másolása egy CFile adott formátumban lévő mutatóba. |
| COleDataObject::GetGlobalData | Adatok másolása a csatolt OLE adatobjektumból egy HGLOBAL megadott formátumba. |
| COleDataObject::GetNextFormat | A következő elérhető adatformátumot adja vissza. |
| COleDataObject::IsDataAvailable | Ellenőrzi, hogy az adatok megadott formátumban érhetők-e el. |
| COleDataObject::Release | Leválasztja és felszabadítja a társított IDataObject objektumot. |
Megjegyzések
COleDataObject nem rendelkezik alaposztálysal.
Az ilyen típusú adatátvitelek közé tartozik a forrás és a cél. Az adatforrás a COleDataSource osztály objektumaként van implementálva. Amikor egy célalkalmazásban adatokat ejtettek el, vagy a vágólapról kérik a beillesztési műveletet, létre kell hozni az COleDataObject osztály egy objektumát.
Ez az osztály lehetővé teszi annak meghatározását, hogy az adatok megadott formátumban léteznek-e. A rendelkezésre álló adatformátumokat számba is vehet, vagy ellenőrizheti, hogy elérhető-e egy adott formátum, majd lekérheti az adatokat az előnyben részesített formátumban. Az objektumlekérés többféleképpen is elvégezhető, beleértve a CFile, a HGLOBAL vagy a STGMEDIUM struktúra használatát.
További információ: STGMEDIUM struktúra a Windows SDK-ban.
Az adatobjektumok alkalmazásbeli használatáról további információt az Adatobjektumok és adatforrások (OLE) című cikkben talál.
Öröklési hierarchia
COleDataObject
Requirements
Fejléc: afxole.h
COleDataObject::Attach
Hívja meg ezt a függvényt az COleDataObject objektum OLE-adatobjektumhoz való társításához.
void Attach(
LPDATAOBJECT lpDataObject,
BOOL bAutoRelease = TRUE);
Paraméterek
lpDataObject
Egy OLE-adatobjektumra mutat.
bAutoRelease
IGAZ, ha az OLE adatobjektumot fel kell szabadítani az COleDataObject objektum megsemmisítésekor, ellenkező esetben HAMIS.
Megjegyzések
További információ: IDataObject a Windows SDK-ban.
COleDataObject::AttachClipboard
Hívja meg ezt a függvényt, hogy csatolja a vágólapon jelenleg található adatobjektumot az COleDataObject objektumhoz.
BOOL AttachClipboard();
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
Megjegyzés:
A függvény meghívása zárolja a vágólapot, amíg az adatobjektum fel nem szabadul. Az adatobjektum a destruktorban jelenik meg.COleDataObject További információ: OpenClipboard és CloseClipboard a Win32 dokumentációjában.
COleDataObject::BeginEnumFormats
Hívja meg ezt a függvényt, hogy felkészüljön az GetNextFormat elem adatformátumainak listájának lekérésére irányuló további hívásokra.
void BeginEnumFormats();
Megjegyzések
A hívás BeginEnumFormatsután az adatobjektum által támogatott első formátum helye lesz tárolva. Az egymást követő hívások GetNextFormat számba fogják adni az adatobjektumban elérhető formátumok listáját.
Az adatok adott formátumban való rendelkezésre állásának ellenőrzéséhez használja a COleDataObject::IsDataAvailable parancsot.
További információ: IDataObject::EnumFormatEtc a Windows SDK-ban.
COleDataObject::COleDataObject
Egy COleDataObject objektumot hoz létre.
COleDataObject();
Megjegyzések
A COleDataObject::Attach vagy COleDataObject::AttachClipboard hívását más COleDataObject függvények meghívása előtt kell végrehajtani.
Megjegyzés:
Mivel a húzással és húzással kapcsolatos kezelők egyik paramétere egy mutató COleDataObject, nem kell meghívni ezt a konstruktort a húzás támogatásához.
COleDataObject::D etach
Ennek a függvénynek a meghívásával leválaszthatja az objektumot a COleDataObject társított OLE-adatobjektumról az adatobjektum felszabadítása nélkül.
LPDATAOBJECT Detach();
Visszaadott érték
A leválasztott OLE adatobjektumra mutató mutató.
Megjegyzések
COleDataObject::GetData
Hívja meg ezt a függvényt, hogy adatokat kérjen le az elemből a megadott formátumban.
BOOL GetData(
CLIPFORMAT cfFormat,
LPSTGMEDIUM lpStgMedium,
LPFORMATETC lpFormatEtc = NULL);
Paraméterek
cfFormat
Az a formátum, amelyben az adatokat vissza kell adni. Ez a paraméter lehet az előre definiált vágólapformátumok egyike, vagy a natív Windows RegisterClipboardFormat függvény által visszaadott érték.
lpStgMedium
Olyan STGMEDIUM-struktúrára mutat, amely adatokat fog fogadni.
lpFormatEtc
Egy FORMATETC-struktúrára mutat, amely leírja az adatok visszaadásának formátumát. Adjon meg egy értéket ehhez a paraméterhez, ha a cfFormat által megadott vágólapformátumon túl további formázási információkat szeretne megadni. Null érték esetén a rendszer az alapértelmezett értékeket használja a FORMATETC struktúra többi mezőjéhez.
Visszaadott érték
Nonzero, ha sikeres; egyéb esetben 0.
Megjegyzések
További információ: IDataObject::GetData, STGMEDIUM és FORMATETC a Windows SDK-ban.
További információ: RegisterClipboardFormat a Windows SDK-ban.
COleDataObject::GetFileData
Hívja meg ezt a függvényt, hogy hozzon létre egy CFile vagy CFile-származtatott objektumot, és a megadott formátumban kérjen le adatokat egy CFile mutatóba.
CFile* GetFileData(
CLIPFORMAT cfFormat,
LPFORMATETC lpFormatEtc = NULL);
Paraméterek
cfFormat
Az a formátum, amelyben az adatokat vissza kell adni. Ez a paraméter lehet az előre definiált vágólapformátumok egyike, vagy a natív Windows RegisterClipboardFormat függvény által visszaadott érték.
lpFormatEtc
Egy FORMATETC-struktúrára mutat, amely leírja az adatok visszaadásának formátumát. Adjon meg egy értéket ehhez a paraméterhez, ha a cfFormat által megadott vágólapformátumon túl további formázási információkat szeretne megadni. Null érték esetén a rendszer az alapértelmezett értékeket használja a FORMATETC struktúra többi mezőjéhez.
Visszaadott érték
Ha sikeres, mutasson az adatokat tartalmazó új CFile vagy CFile-származtatott objektumra, ellenkező esetben NULL értékre.
Megjegyzések
Attól függően, hogy az adatokat milyen adathordozón tárolja a rendszer, a visszatérési érték által mutatott tényleges típus lehet CFile, CSharedFilevagy COleStreamFile.
Megjegyzés:
A CFile függvény visszatérési értéke által elért objektum a hívó tulajdonában van. A hívó feladata az CFile objektumnakdelete, ezáltal a fájl bezárása.
További információ: FORMATETC a Windows SDK-ban.
További információ: RegisterClipboardFormat a Windows SDK-ban.
COleDataObject::GetGlobalData
A függvény meghívásával lefoglalhat egy globális memóriablokkot, és lekérheti a megadott formátumú adatokat egy HGLOBAL-fájlba.
HGLOBAL GetGlobalData(
CLIPFORMAT cfFormat,
LPFORMATETC lpFormatEtc = NULL);
Paraméterek
cfFormat
Az a formátum, amelyben az adatokat vissza kell adni. Ez a paraméter lehet az előre definiált vágólapformátumok egyike, vagy a natív Windows RegisterClipboardFormat függvény által visszaadott érték.
lpFormatEtc
Egy FORMATETC-struktúrára mutat, amely leírja az adatok visszaadásának formátumát. Adjon meg egy értéket ehhez a paraméterhez, ha a cfFormat által megadott vágólapformátumon túl további formázási információkat szeretne megadni. Null érték esetén a rendszer az alapértelmezett értékeket használja a FORMATETC struktúra többi mezőjéhez.
Visszaadott érték
Az adatokat tartalmazó globális memóriablokk kezelője, ha sikeres; ellenkező esetben NULL.
Megjegyzések
További információ: FORMATETC a Windows SDK-ban.
További információ: RegisterClipboardFormat a Windows SDK-ban.
COleDataObject::GetNextFormat
Ezt a függvényt többször is meghívhatja az elemből való adatlekéréshez rendelkezésre álló összes formátum lekéréséhez.
BOOL GetNextFormat(LPFORMATETC lpFormatEtc);
Paraméterek
lpFormatEtc
Arra a FORMATETC-struktúrára mutat, amely a függvényhívás visszatérésekor megkapja a formátumadatokat.
Visszaadott érték
Nonzero, ha más formátum is elérhető; egyéb esetben 0.
Megjegyzések
A COleDataObject::BeginEnumFormats hívása után a rendszer az adatobjektum által támogatott első formátum pozícióját tárolja. Az egymást követő hívások GetNextFormat számba fogják adni az adatobjektumban elérhető formátumok listáját. Ezekkel a függvényekkel listázhatja az elérhető formátumokat.
Egy adott formátum elérhetőségének ellenőrzéséhez hívja meg a COleDataObject::IsDataAvailable parancsot.
További információ: IEnumXXXX::Next a Windows SDK-ban.
COleDataObject::IsDataAvailable
Hívja meg ezt a függvényt annak megállapításához, hogy elérhető-e egy adott formátum az adatok OLE-elemből való lekéréséhez.
BOOL IsDataAvailable(
CLIPFORMAT cfFormat,
LPFORMATETC lpFormatEtc = NULL);
Paraméterek
cfFormat
Az lpFormatEtc által mutatott struktúrában használandó vágólap adatformátum. Ez a paraméter lehet az előre definiált vágólapformátumok egyike, vagy a natív Windows RegisterClipboardFormat függvény által visszaadott érték.
lpFormatEtc
A kívánt formátumot leíró FORMATETC-struktúrára mutat. Csak akkor adjon meg értéket ehhez a paraméterhez, ha a cfFormat által megadott vágólapformátumon túl további formázási információkat szeretne megadni. Null érték esetén a rendszer az alapértelmezett értékeket használja a FORMATETC struktúra többi mezőjéhez.
Visszaadott érték
Nem kötelező, ha az adatok a megadott formátumban érhetők el; egyéb esetben 0.
Megjegyzések
Ez a függvény a hívás GetDataelőtt hasznos. GetFileDataGetGlobalData
További információ: IDataObject::QueryGetData és FORMATETC a Windows SDK-ban.
További információ: RegisterClipboardFormat a Windows SDK-ban.
Example
Lásd a CRichEditView::QueryAcceptData példát.
COleDataObject::Release
Hívja meg ezt a függvényt az objektumhoz korábban társított IDataObject objektum tulajdonjogának felszabadításához COleDataObject .
void Release();
Megjegyzések
A IDataObject társítás a COleDataObject hívással Attach vagy AttachClipboard explicit módon vagy a keretrendszerrel történt. Ha a bAutoRelease paraméter Attach ÉRTÉKE HAMIS, az IDataObject objektum nem lesz felszabadítva. Ebben az esetben a hívó felelős az IUnknown::Release meghívásával történő kiadásáértIDataObject.
Lásd még
MFC-minta HIERSVR
MFC-minta OCLIENT
hierarchiadiagram
COleDataSource osztály
COleClientItem osztály
COleServerItem osztály