Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Hiermee definieert u de containerinterface voor OLE-items.
Syntaxis
class COleClientItem : public CDocItem
Leden
Openbare constructors
| Naam | Beschrijving |
|---|---|
| COleClientItem::COleClientItem | Maakt een COleClientItem-object. |
Openbare methoden
| Naam | Beschrijving |
|---|---|
| COleClientItem::Activate | Hiermee opent u het OLE-item voor een bewerking en voert u vervolgens het opgegeven werkwoord uit. |
| COleClientItem::ActivateAs | Hiermee wordt het item geactiveerd als een ander type. |
| COleClientItem::AttachDataObject | Hiermee opent u de gegevens in het OLE-object. |
| COleClientItem::CanCreateFromData | Geeft aan of een containertoepassing een ingesloten object kan maken. |
| COleClientItem::CanCreateLinkFromData | Hiermee wordt aangegeven of een containertoepassing een gekoppeld object kan maken. |
| COleClientItem::CanPaste | Geeft aan of het Klembord een insluitbaar of statisch OLE-item bevat. |
| COleClientItem::CanPasteLink | Geeft aan of het Klembord een koppelbaar OLE-item bevat. |
| COleClientItem::Close | Hiermee sluit u een koppeling naar een server, maar vernietigt u het OLE-item niet. |
| COleClientItem::ConvertTo | Converteert het item naar een ander type. |
| COleClientItem::CopyToClipboard | Kopieert het OLE-item naar het Klembord. |
| COleClientItem::CreateCloneFrom | Hiermee maakt u een duplicaat van een bestaand item. |
| COleClientItem::CreateFromClipboard | Hiermee maakt u een ingesloten item vanaf het Klembord. |
| COleClientItem::CreateFromData | Hiermee maakt u een ingesloten item van een gegevensobject. |
| COleClientItem::CreateFromFile | Hiermee maakt u een ingesloten item op basis van een bestand. |
| COleClientItem::CreateLinkFromClipboard | Hiermee maakt u een gekoppeld item vanaf het Klembord. |
| COleClientItem::CreateLinkFromData | Hiermee maakt u een gekoppeld item op basis van een gegevensobject. |
| COleClientItem::CreateLinkFromFile | Hiermee maakt u een gekoppeld item op basis van een bestand. |
| COleClientItem::CreateNewItem | Hiermee maakt u een nieuw ingesloten item door de servertoepassing te starten. |
| COleClientItem::CreateStaticFromClipboard | Hiermee maakt u een statisch item vanaf het Klembord. |
| COleClientItem::CreateStaticFromData | Hiermee maakt u een statisch item van een gegevensobject. |
| COleClientItem::D eactivate | Hiermee wordt het item gedeactiveerd. |
| COleClientItem::D eactivateUI | Hiermee herstelt u de gebruikersinterface van de containertoepassing naar de oorspronkelijke staat. |
| COleClientItem::D elete | Hiermee verwijdert of sluit u het OLE-item als het een gekoppeld item was. |
| COleClientItem::D oDragDrop | Hiermee voert u een bewerking voor slepen en neerzetten uit. |
| COleClientItem::D oVerb | Hiermee wordt het opgegeven werkwoord uitgevoerd. |
| COleClientItem::D raw | Hiermee tekent u het OLE-item. |
| COleClientItem::GetActiveView | Hiermee haalt u de weergave op waarop het item is geactiveerd. |
| COleClientItem::GetCachedExtent | Retourneert de grenzen van de rechthoek van het OLE-item. |
| COleClientItem::GetClassID | Hiermee haalt u de klasse-id van het huidige item op. |
| COleClientItem::GetClipboardData | Hiermee haalt u de gegevens op die op het Klembord worden geplaatst door de CopyToClipboard lidfunctie aan te roepen. |
| COleClientItem::GetDocument | Retourneert het COleDocument object dat het huidige item bevat. |
| COleClientItem::GetDrawAspect | Hiermee haalt u de huidige weergave van het item op voor weergave. |
| COleClientItem::GetExtent | Retourneert de grenzen van de rechthoek van het OLE-item. |
| COleClientItem::GetIconFromRegistry | Hiermee wordt een ingang opgehaald naar een pictogram dat is gekoppeld aan de server van een bepaalde CLSID. |
| COleClientItem::GetIconicMetafile | Hiermee haalt u het metabestand op dat wordt gebruikt voor het tekenen van het pictogram van het item. |
| COleClientItem::GetInPlaceWindow | Retourneert een aanwijzer naar het in-place bewerkingsvenster van het item. |
| COleClientItem::GetItemState | Hiermee haalt u de huidige status van het item op. |
| COleClientItem::GetLastStatus | Retourneert de status van de laatste OLE-bewerking. |
| COleClientItem::GetLinkUpdateOptions | Retourneert de updatemodus voor een gekoppeld item (geavanceerde functie). |
| COleClientItem::GetType | Retourneert het type (ingesloten, gekoppeld of statisch) van het OLE-item. |
| COleClientItem::GetUserType | Hiermee haalt u een tekenreeks op waarin het type van het item wordt beschreven. |
| COleClientItem::IsInPlaceActive | Retourneert TRUE als het item in-place actief is. |
| COleClientItem::IsLinkUpToDate | Retourneert TRUE als een gekoppeld item up-to-date is met het brondocument. |
| COleClientItem::IsModified | Retourneert TRUE als het item is gewijzigd sinds het voor het laatst is opgeslagen. |
| COleClientItem::IsOpen | Retourneert TRUE als het item momenteel is geopend in de servertoepassing. |
| COleClientItem::IsRunning | Retourneert TRUE als de servertoepassing van het item wordt uitgevoerd. |
| COleClientItem::OnActivate | Wordt aangeroepen door het framework om het item te melden dat het is geactiveerd. |
| COleClientItem::OnActivateUI | Aangeroepen door het framework om het item te melden dat het is geactiveerd en de gebruikersinterface ervan moet weergeven. |
| COleClientItem::OnChange | Aangeroepen wanneer de server het OLE-item wijzigt. Implementatie vereist. |
| COleClientItem::OnDeactivate | Aangeroepen door het framework wanneer een item wordt gedeactiveerd. |
| COleClientItem::OnDeactivateUI | Aangeroepen door het framework wanneer de server de in-place gebruikersinterface heeft verwijderd. |
| COleClientItem::OnGetClipboardData | Wordt aangeroepen door het framework om de gegevens te kopiëren naar het Klembord. |
| COleClientItem::OnInsertMenus | Aangeroepen door het framework om een samengesteld menu te maken. |
| COleClientItem::OnRemoveMenus | Aangeroepen door het framework om de menu's van de container te verwijderen uit een samengesteld menu. |
| COleClientItem::OnSetMenu | Wordt aangeroepen door het framework om een samengesteld menu te installeren en te verwijderen. |
| COleClientItem::OnShowControlBars | Aangeroepen door het framework om besturingsbalken weer te geven en te verbergen. |
| COleClientItem::OnUpdateFrameTitle | Aangeroepen door het framework om de titelbalk van het framevenster bij te werken. |
| COleClientItem::ReactivateAndUndo | Het item opnieuw activeren en de laatste bewerking ter plaatse ongedaan maken. |
| COleClientItem::Release | Hiermee wordt de verbinding met een gekoppeld OLE-item vrijgegeven en gesloten als het is geopend. Vernietigt het clientitem niet. |
| COleClientItem::Reload | Laadt het item opnieuw na een aanroep naar ActivateAs. |
| COleClientItem::Run | Hiermee wordt de toepassing uitgevoerd die is gekoppeld aan het item. |
| COleClientItem::SetDrawAspect | Hiermee stelt u de huidige weergave van het item in voor weergave. |
| COleClientItem::SetExtent | Hiermee stelt u de begrenzingsrechthoek van het OLE-item in. |
| COleClientItem::SetHostNames | Hiermee stelt u de namen in die de server weergeeft bij het bewerken van het OLE-item. |
| COleClientItem::SetIconicMetafile | Slaat het metabestand op dat wordt gebruikt voor het tekenen van het itempictogram. |
| COleClientItem::SetItemRects | Hiermee stelt u de begrenzingsrechthoek van het item in. |
| COleClientItem::SetLinkUpdateOptions | Hiermee stelt u de updatemodus voor een gekoppeld item (geavanceerde functie) in. |
| COleClientItem::SetPrintDevice | Hiermee stelt u het afdrukdoelapparaat voor dit clientitem in. |
| COleClientItem::UpdateLink | Hiermee werkt u de presentatiecache van een item bij. |
Beveiligde methoden
| Naam | Beschrijving |
|---|---|
| COleClientItem::CanActivate | Wordt aangeroepen door het framework om te bepalen of in-place activering is toegestaan. |
| COleClientItem::OnChangeItemPosition | Aangeroepen door het framework wanneer de positie van een item verandert. |
| COleClientItem::OnDeactivateAndUndo | Aangeroepen door het framework om ongedaan te maken na activering. |
| COleClientItem::OnDiscardUndoState | Aangeroepen door het framework om de statusgegevens van het item ongedaan te maken. |
| COleClientItem::OnGetClipRect | Wordt aangeroepen door het framework om de coördinaten van de rechthoek voor uitknipsels van het item op te halen. |
| COleClientItem::OnGetItemPosition | Aangeroepen door het framework om de positie van het item ten opzichte van de weergave op te halen. |
| COleClientItem::OnGetWindowContext | Aangeroepen door het framework wanneer een item is geactiveerd. |
| COleClientItem::OnScrollBy | Wordt aangeroepen door het framework om het item in beeld te schuiven. |
| COleClientItem::OnShowItem | Aangeroepen door het framework om het OLE-item weer te geven. |
Opmerkingen
Een OLE-item vertegenwoordigt gegevens, gemaakt en onderhouden door een servertoepassing, die 'naadloos kan worden opgenomen in een document, zodat de gebruiker één document lijkt te zijn. Het resultaat is een samengesteld document dat bestaat uit het OLE-item en een met een document.
Een OLE-item kan worden ingesloten of gekoppeld. Als deze is ingesloten, worden de gegevens opgeslagen als onderdeel van het samengestelde document. Als deze is gekoppeld, worden de gegevens opgeslagen als onderdeel van een afzonderlijk bestand dat is gemaakt door de servertoepassing en wordt alleen een koppeling naar dat bestand opgeslagen in het samengestelde document. Alle OLE-items bevatten informatie die de servertoepassing aangeeft die moet worden aangeroepen om ze te bewerken.
COleClientItem definieert verschillende overschreven functies die worden aangeroepen als reactie op aanvragen van de servertoepassing; deze onderdrukkingen fungeren meestal als meldingen. Hierdoor kan de servertoepassing de container informeren over wijzigingen die de gebruiker aanbrengt bij het bewerken van het OLE-item of om informatie op te halen die nodig is tijdens het bewerken.
COleClientItem kan worden gebruikt met de klasse COleDocument, COleLinkingDoc of COleServerDoc . Als u deze wilt gebruiken COleClientItem, moet u een klasse afleiden en de functie OnChange-lid implementeren, waarmee wordt gedefinieerd hoe de container reageert op wijzigingen die zijn aangebracht in het item. Als u in-place activering wilt ondersteunen, overschrijft u de onGetItemPosition-lidfunctie . Deze functie bevat informatie over de weergegeven positie van het OLE-item.
Zie de artikelen Containers: Een container en activering implementeren voor meer informatie over het gebruik van de containerinterface.
Opmerking
De Windows SDK verwijst naar ingesloten en gekoppelde items als 'objecten' en verwijst naar typen items als 'klassen'. In deze verwijzing wordt de term item gebruikt om de OLE-entiteit te onderscheiden van het bijbehorende C++-object en de term 'type' om de OLE-categorie te onderscheiden van de C++-klasse.
Overnamehiërarchie
COleClientItem
Behoeften
koptekst: afxole.h
COleClientItem::Activate
Roep deze functie aan om het opgegeven werkwoord uit te voeren in plaats van DoVerb , zodat u uw eigen verwerking kunt uitvoeren wanneer er een uitzondering wordt gegenereerd.
void Activate(
LONG nVerb,
CView* pView,
LPMSG lpMsg = NULL);
Parameterwaarden
nVerb
Hiermee geeft u het werkwoord dat moet worden uitgevoerd. Dit kan een van de volgende zijn:
| Waarde | Betekenis | Symbool |
|---|---|---|
| 0- | Primaire werkwoord | OLEIVERB_PRIMARY |
| - 1 | Secundair werkwoord | Geen |
| - 1 | Item weergeven voor bewerken | OLEIVERB_SHOW |
| - 2 | Item bewerken in een afzonderlijk venster | OLEIVERB_OPEN |
| - 3 | Item verbergen | OLEIVERB_HIDE |
De -1 waarde is doorgaans een alias voor een ander werkwoord. Als openen bewerken niet wordt ondersteund, heeft -2 hetzelfde effect als -1. Zie IOleObject::D oVerb in de Windows SDK voor meer waarden.
pView-
Wijs het venster containerweergave aan dat het OLE-item bevat; dit wordt gebruikt door de servertoepassing voor in-place activering. Deze parameter moet NULL zijn als de container geen ondersteuning biedt voor in-place activering.
lpMsg-
Aanwijzer naar het bericht waardoor het item is geactiveerd.
Opmerkingen
Als de servertoepassing is geschreven met behulp van de Microsoft Foundation Class Library, zorgt deze functie ervoor dat de onDoVerb-lidfunctie van het bijbehorende COleServerItem object wordt uitgevoerd.
Als het primaire werkwoord Bewerken is en nul is opgegeven in de parameter nVerb , wordt de servertoepassing gestart om toe te staan dat het OLE-item kan worden bewerkt. Als de containertoepassing in-place activering ondersteunt, kan bewerking worden uitgevoerd. Als de container geen ondersteuning biedt voor in-place activering (of als het open werkwoord is opgegeven), wordt de server gestart in een afzonderlijk venster en kan daar bewerking worden uitgevoerd. Wanneer de gebruiker van de containertoepassing dubbelklikt op het OLE-item, bepaalt de waarde voor het primaire werkwoord in de parameter nVerb doorgaans welke actie de gebruiker kan uitvoeren. Als de server echter slechts één actie ondersteunt, wordt die actie uitgevoerd, ongeacht welke waarde is opgegeven in de parameter nVerb .
Zie IOleObject::D oVerb in de Windows SDK voor meer informatie.
COleClientItem::ActivateAs
Maakt gebruik van de objectconversiefaciliteiten van OLE om het item te activeren alsof het een item was van het type dat is opgegeven door clsidNew.
virtual BOOL ActivateAs(
LPCTSTR lpszUserType,
REFCLSID clsidOld,
REFCLSID clsidNew);
Parameterwaarden
lpszUserType
Wijs een tekenreeks aan die het doelgebruikerstype vertegenwoordigt, zoals 'Word-document'.
clsidOld
Een verwijzing naar de huidige klasse-id van het item. De klasse-id moet het type van het werkelijke object vertegenwoordigen, zoals opgeslagen, tenzij het een koppeling is. In dat geval moet dit de CLSID zijn van het item waarnaar de koppeling verwijst. De COleConvertDialog levert automatisch de juiste klasse-id voor het item.
clsidNew
Een verwijzing naar de doelklasse-id.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Dit wordt automatisch aangeroepen door COleConvertDialog::D oConvert. Het wordt meestal niet rechtstreeks genoemd.
COleClientItem::AttachDataObject
Roep deze functie aan om een COleDataObject te initialiseren voor toegang tot de gegevens in het OLE-item.
void AttachDataObject(COleDataObject& rDataObject) const;
Parameterwaarden
rDataObject
Verwijzing naar een COleDataObject object dat wordt geïnitialiseerd om toegang tot de gegevens in het OLE-item toe te staan.
COleClientItem::CanActivate
Aangeroepen door het framework wanneer de gebruiker in-place activering van het OLE-item aanvraagt; De retourwaarde van deze functie bepaalt of in-place activering is toegestaan.
virtual BOOL CanActivate();
Retourwaarde
Niet-nul indien in-place activering is toegestaan; anders 0.
Opmerkingen
De standaard implementatie staat in-place activering toe als de container een geldig venster heeft. Overschrijf deze functie om speciale logica te implementeren voor het accepteren of weigeren van de activeringsaanvraag. Een activeringsaanvraag kan bijvoorbeeld worden geweigerd als het OLE-item te klein is of momenteel niet zichtbaar is.
Zie IOleInPlaceSite::CanInPlaceActivate in de Windows SDK voor meer informatie.
COleClientItem::CanCreateFromData
Hiermee wordt gecontroleerd of een containertoepassing een ingesloten object kan maken op basis van het opgegeven COleDataObject object.
static BOOL PASCAL CanCreateFromData(const COleDataObject* pDataObject);
Parameterwaarden
pDataObject
Wijs het COleDataObject-object aan van waaruit het OLE-item moet worden gemaakt.
Retourwaarde
Niet-nul als de container een ingesloten object van het COleDataObject object kan maken; anders 0.
Opmerkingen
De COleDataObject klasse wordt gebruikt in gegevensoverdrachten voor het ophalen van gegevens in verschillende indelingen vanaf het Klembord, via slepen en neerzetten of vanuit een ingesloten OLE-item.
Containers kunnen deze functie gebruiken om te besluiten hun opdrachten Plakken bewerken en Plakken speciaal bewerken in of uit te schakelen.
Zie het artikel Data Objects and Data Sources (OLE) voor meer informatie.
COleClientItem::CanCreateLinkFromData
Hiermee wordt gecontroleerd of een containertoepassing een gekoppeld object van het opgegeven COleDataObject object kan maken.
static BOOL PASCAL CanCreateLinkFromData(const COleDataObject* pDataObject);
Parameterwaarden
pDataObject
Wijs het COleDataObject-object aan van waaruit het OLE-item moet worden gemaakt.
Retourwaarde
Niet-nul als de container een gekoppeld object van het COleDataObject object kan maken.
Opmerkingen
De COleDataObject klasse wordt gebruikt in gegevensoverdrachten voor het ophalen van gegevens in verschillende indelingen vanaf het Klembord, via slepen en neerzetten of vanuit een ingesloten OLE-item.
Containers kunnen deze functie gebruiken om te besluiten de opdrachten Plakken speciaal bewerken en Plakken koppelen bewerken in of uit te schakelen.
Zie het artikel Data Objects and Data Sources (OLE) voor meer informatie.
COleClientItem::CanPaste
Roep deze functie aan om te zien of een ingesloten OLE-item kan worden geplakt vanaf het Klembord.
static BOOL PASCAL CanPaste();
Retourwaarde
Niet-nul als een ingesloten OLE-item kan worden geplakt vanaf het Klembord; anders 0.
Opmerkingen
Zie OleGetClipboard en OleQueryCreateFromData in de Windows SDK voor meer informatie.
COleClientItem::CanPasteLink
Roep deze functie aan om te zien of een gekoppeld OLE-item kan worden geplakt vanaf het Klembord.
static BOOL PASCAL CanPasteLink();
Retourwaarde
Niet-nul als een gekoppeld OLE-item kan worden geplakt vanaf het Klembord; anders 0.
Opmerkingen
Zie OleGetClipboard en OleQueryLinkFromData in de Windows SDK voor meer informatie.
COleClientItem::Close
Roep deze functie aan om de status van een OLE-item te wijzigen van de actieve status in de geladen status, dat wil gezegd, geladen met de handler in het geheugen, maar met de server niet wordt uitgevoerd.
void Close(OLECLOSE dwCloseOption = OLECLOSE_SAVEIFDIRTY);
Parameterwaarden
dwCloseOption-
Vlag die aangeeft onder welke omstandigheden het OLE-item wordt opgeslagen wanneer het terugkeert naar de geladen status. Het kan een van de volgende waarden hebben:
OLECLOSE_SAVEIFDIRTY het OLE-item opslaan.
OLECLOSE_NOSAVE sla het OLE-item niet op.
OLECLOSE_PROMPTSAVE de gebruiker vragen of het OLE-item moet worden opgeslagen.
Opmerkingen
Deze functie heeft geen effect wanneer het OLE-item niet wordt uitgevoerd.
Zie IOleObject::Close in de Windows SDK voor meer informatie.
COleClientItem::COleClientItem
Hiermee wordt een COleClientItem object samengesteld en toegevoegd aan de verzameling documentitems van het containerdocument, waarmee alleen het C++-object wordt samengesteld en er geen OLE-initialisatie wordt uitgevoerd.
COleClientItem(COleDocument* pContainerDoc = NULL);
Parameterwaarden
pContainerDoc
Wijs het containerdocument aan dat dit item bevat. Dit kan elke COleDocument-afgeleide zijn.
Opmerkingen
Als u een NULL-aanwijzer doorgeeft, wordt er geen toevoeging aan het containerdocument aangebracht. U moet COleDocument::AddItem expliciet aanroepen.
U moet een van de volgende lidfuncties aanroepen voordat u het OLE-item gebruikt:
COleClientItem::ConvertTo
Roep deze lidfunctie aan om het item te converteren naar het type dat is opgegeven door clsidNew.
virtual BOOL ConvertTo(REFCLSID clsidNew);
Parameterwaarden
clsidNew
De klasse-id van het doeltype.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Dit wordt automatisch aangeroepen door COleConvertDialog. Het is niet nodig om het rechtstreeks aan te roepen.
COleClientItem::CopyToClipboard
Roep deze functie aan om het OLE-item naar het Klembord te kopiëren.
void CopyToClipboard(BOOL bIncludeLink = FALSE);
Parameterwaarden
bIncludeLink
WAAR als koppelingsgegevens naar het Klembord moeten worden gekopieerd, zodat een gekoppeld item kan worden geplakt; anders ONWAAR.
Opmerkingen
Normaal gesproken roept u deze functie aan bij het schrijven van berichthandlers voor de opdrachten Kopiëren of Knippen in het menu Bewerken. U moet itemselectie implementeren in uw containertoepassing als u de opdrachten Kopiëren of Knippen wilt implementeren.
Zie OleSetClipboard in de Windows SDK voor meer informatie.
COleClientItem::CreateCloneFrom
Roep deze functie aan om een kopie van het opgegeven OLE-item te maken.
BOOL CreateCloneFrom(const COleClientItem* pSrcItem);
Parameterwaarden
pSrcItem
Wijs het OLE-item aan dat moet worden gedupliceerd.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
De kopie is identiek aan het bronitem. U kunt deze functie gebruiken om ongedaan maken van bewerkingen te ondersteunen.
COleClientItem::CreateFromClipboard
Roep deze functie aan om een ingesloten item te maken op basis van de inhoud van het Klembord.
BOOL CreateFromClipboard(
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Meestal roept u deze functie aan vanuit de berichtenhandler voor de opdracht Plakken in het menu Bewerken. (De opdracht Plakken is ingeschakeld door het framework als de functie CanPaste-lid niet-nul retourneert.)
Zie OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::CreateFromData
Roep deze functie aan om een ingesloten item van een COleDataObject object te maken.
BOOL CreateFromData(
COleDataObject* pDataObject,
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
pDataObject
Wijs het COleDataObject-object aan van waaruit het OLE-item moet worden gemaakt.
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Bewerkingen voor gegevensoverdracht, zoals plakken vanaf het Klembord of slepen en neerzetten, bieden COleDataObject objecten die de informatie bevatten die wordt aangeboden door een servertoepassing. Het wordt meestal gebruikt in uw onderdrukking van CView::OnDrop.
Zie OleCreateFromData, OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::CreateFromFile
Roep deze functie aan om een ingesloten OLE-item te maken op basis van een bestand.
BOOL CreateFromFile(
LPCTSTR lpszFileName,
REFCLSID clsid = CLSID_NULL,
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
lpszFileName
Wijs de naam aan van het bestand waaruit het OLE-item moet worden gemaakt.
clsid-
Gereserveerd voor toekomstig gebruik.
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
In het framework wordt deze functie aangeroepen vanuit COleInsertDialog::CreateItem als de gebruiker OK kiest in het dialoogvenster Object invoegen wanneer de knop Bestand maken is geselecteerd.
Zie OleCreateFromFile, OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::CreateLinkFromClipboard
Roep deze functie aan om een gekoppeld item te maken op basis van de inhoud van het Klembord.
BOOL CreateLinkFromClipboard(
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Meestal roept u deze functie aan vanuit de berichtenhandler voor de opdracht Koppeling plakken in het menu Bewerken. (De opdracht Koppeling plakken is ingeschakeld in de standaard implementatie van COleDocument als het Klembord een OLE-item bevat waaraan kan worden gekoppeld.)
Zie OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::CreateLinkFromData
Roep deze functie aan om een gekoppeld item van een COleDataObject object te maken.
BOOL CreateLinkFromData(
COleDataObject* pDataObject,
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
pDataObject
Wijs het COleDataObject-object aan van waaruit het OLE-item moet worden gemaakt.
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Roep dit aan tijdens een drop-bewerking wanneer de gebruiker aangeeft dat er een koppeling moet worden gemaakt. Het kan ook worden gebruikt om de opdracht Plakken bewerken te verwerken. Het wordt aangeroepen door het framework in COleClientItem::CreateLinkFromClipboard en in COlePasteSpecialDialog::CreateItem wanneer de optie Koppeling is geselecteerd.
Zie OleCreateLinkFromData, OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::CreateLinkFromFile
Roep deze functie aan om een gekoppeld OLE-item te maken op basis van een bestand.
BOOL CreateLinkFromFile(
LPCTSTR lpszFileName,
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
lpszFileName
Wijs de naam aan van het bestand waaruit het OLE-item moet worden gemaakt.
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
In het framework wordt deze functie aangeroepen als de gebruiker OK kiest in het dialoogvenster Object invoegen wanneer de knop Bestand maken is ingeschakeld en het selectievakje Koppeling is ingeschakeld. Het wordt aangeroepen vanuit COleInsertDialog::CreateItem.
Zie OleCreateLinkToFile, OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::CreateNewItem
Roep deze functie aan om een ingesloten item te maken; met deze functie wordt de servertoepassing gestart waarmee de gebruiker het OLE-item kan maken.
BOOL CreateNewItem(
REFCLSID clsid,
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
clsid-
Id waarmee het type OLE-item dat moet worden gemaakt, uniek wordt geïdentificeerd.
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
In het framework wordt deze functie aangeroepen als de gebruiker OK kiest in het dialoogvenster Object invoegen wanneer de knop Nieuwe maken is geselecteerd.
Zie OleCreate, OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::CreateStaticFromClipboard
Roep deze functie aan om een statisch item te maken op basis van de inhoud van het Klembord.
BOOL CreateStaticFromClipboard(
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Een statisch item bevat de presentatiegegevens, maar niet de systeemeigen gegevens; daarom kan deze niet worden bewerkt. U roept deze functie meestal aan als de functie CreateFromClipboard-lid mislukt.
Zie OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::CreateStaticFromData
Roep deze functie aan om een statisch item van een COleDataObject object te maken.
BOOL CreateStaticFromData(
COleDataObject* pDataObject,
OLERENDER render = OLERENDER_DRAW,
CLIPFORMAT cfFormat = 0,
LPFORMATETC lpFormatEtc = NULL);
Parameterwaarden
pDataObject
Wijs het COleDataObject-object aan van waaruit het OLE-item moet worden gemaakt.
weergeven
Vlag die aangeeft hoe de server het OLE-item weergeeft. Zie OLERENDER in de Windows SDK voor de mogelijke waarden.
cfFormat
Hiermee geeft u de gegevensindeling Klembord op die in de cache moet worden opgeslagen bij het maken van het OLE-item.
lpFormatEtc
Wijs een FORMATETC-structuur aan die wordt gebruikt als de render is OLERENDER_FORMAT of OLERENDER_DRAW. Geef alleen een waarde op voor deze parameter als u aanvullende opmaakinformatie wilt opgeven buiten de indeling van het Klembord die is opgegeven door cfFormat. Als u deze parameter weglaat, worden standaardwaarden gebruikt voor de andere velden in de FORMATETC structuur.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Een statisch item bevat de presentatiegegevens, maar niet de systeemeigen gegevens; daarom kan deze niet worden bewerkt. Dit is in wezen hetzelfde als CreateStaticFromClipboard , behalve dat een statisch item kan worden gemaakt op basis van een willekeurig COleDataObject, niet alleen van het Klembord.
Wordt gebruikt in COlePasteSpecialDialog::CreateItem wanneer Static is geselecteerd.
Zie OleCreateStaticFromData, OLERENDER en FORMATETC in de Windows SDK voor meer informatie.
COleClientItem::D eactivate
Roep deze functie aan om het OLE-item te deactiveren en alle gekoppelde resources vrij te maken.
void Deactivate();
Opmerkingen
Normaal gesproken deactiveert u een actief OLE-item ter plaatse wanneer de gebruiker op de muis klikt op het clientgebied buiten de grenzen van het item. Als u het OLE-item deactiveert, wordt de status ongedaan gemaakt, waardoor het niet mogelijk is om de functie ReactivateAndUndo-lid aan te roepen.
Als uw toepassing ondersteuning biedt voor ongedaan maken, roept u in plaats daarvan geen aanroep Deactivate; roept u in plaats daarvan DeactivateUI aan.
Zie IOleInPlaceObject::InPlaceDeactivate in de Windows SDK voor meer informatie.
COleClientItem::D eactivateUI
Roep deze functie aan wanneer de gebruiker een item deactiveert dat is geactiveerd.
void DeactivateUI();
Opmerkingen
Met deze functie herstelt u de gebruikersinterface van de containertoepassing naar de oorspronkelijke staat, waarbij menu's en andere besturingselementen worden verborgen die zijn gemaakt voor in-place activering.
Met deze functie worden de statusinformatie voor ongedaan maken voor het item niet leeggemaakt. Deze informatie wordt bewaard, zodat ReactivateAndUndo later kan worden gebruikt om een opdracht ongedaan maken uit te voeren in de servertoepassing, voor het geval de opdracht ongedaan maken van de container direct na het deactiveren van het item wordt gekozen.
Zie IOleInPlaceObject::InPlaceDeactivate in de Windows SDK voor meer informatie.
COleClientItem::D elete
Roep deze functie aan om het OLE-item uit het containerdocument te verwijderen.
void Delete(BOOL bAutoDelete = TRUE);
Parameterwaarden
bAutoDelete
Hiermee geeft u op of het item uit het document moet worden verwijderd.
Opmerkingen
Met deze functie wordt de functie Releaselid aangeroepen, die op zijn beurt het C++-object voor het item verwijdert, waardoor het OLE-item definitief uit het document wordt verwijderd. Als het OLE-item is ingesloten, worden de systeemeigen gegevens voor het item verwijderd. Er wordt altijd een actieve server gesloten; Als het item dus een geopende koppeling is, wordt het door deze functie gesloten.
COleClientItem::D oDragDrop
Roep de DoDragDrop lidfunctie aan om een slepen-en-neerzetten-bewerking uit te voeren.
DROPEFFECT DoDragDrop(
LPCRECT lpItemRect,
CPoint ptOffset,
BOOL bIncludeLink = FALSE,
DWORD dwEffects = DROPEFFECT_COPY | DROPEFFECT_MOVE,
LPCRECT lpRectStartDrag = NULL);
Parameterwaarden
lpItemRect
De rechthoek van het item op het scherm in clientcoördinaten (pixels).
ptOffset
De verschuiving van lpItemRect waar de muispositie zich bevond op het moment van slepen.
bIncludeLink
Stel deze optie in op TRUE als de koppelingsgegevens naar het Klembord moeten worden gekopieerd. Stel deze in op FALSE als uw servertoepassing geen koppelingen ondersteunt.
dwEffects
Bepaalt de effecten die de slepenbron in de sleepbewerking toestaat.
lpRectStartDrag
Aanwijzer naar de rechthoek die definieert waar de sleep daadwerkelijk begint. Zie de volgende sectie Opmerkingen voor meer informatie.
Retourwaarde
Een DROPEFFECT-waarde. Als het DROPEFFECT_MOVE is, moeten de oorspronkelijke gegevens worden verwijderd.
Opmerkingen
De bewerking slepen en neerzetten wordt niet onmiddellijk gestart. Het wacht totdat de muiscursor de rechthoek verlaat die is opgegeven door lpRectStartDrag of totdat een opgegeven aantal milliseconden is verstreken. Als lpRectStartDrag NULL is, is de grootte van de rechthoek één pixel.
De vertragingstijd wordt opgegeven door een registersleutelinstelling. U kunt de vertragingstijd wijzigen door CWinApp::WriteProfileString of CWinApp::WriteProfileInt aan te roepen. Als u de vertragingstijd niet opgeeft, wordt een standaardwaarde van 200 milliseconden gebruikt. Vertragingstijd slepen wordt als volgt opgeslagen:
Vertragingstijd voor Windows NT-slepen wordt opgeslagen in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\NT\CurrentVersion\IniFileMapping\win.ini\Windows\DragDelay.
Vertragingstijd voor slepen van Windows 3.x wordt opgeslagen in de WIN. INI-bestand, onder de sectie [Windows}.
Vertragingstijd voor slepen van Windows 95/98 wordt opgeslagen in een versie in de cache van WIN. INI.
Voor meer informatie over hoe vertragingsinformatie voor slepen wordt opgeslagen in het register of in het . Zie WriteProfileString in het INI-bestand in de Windows SDK.
COleClientItem::D oVerb
Aanroep DoVerb om het opgegeven werkwoord uit te voeren.
virtual BOOL DoVerb(
LONG nVerb,
CView* pView,
LPMSG lpMsg = NULL);
Parameterwaarden
nVerb
Hiermee geeft u het werkwoord dat moet worden uitgevoerd. Het kan een van de volgende opties bevatten:
| Waarde | Betekenis | Symbool |
|---|---|---|
| 0- | Primaire werkwoord | OLEIVERB_PRIMARY |
| - 1 | Secundair werkwoord | Geen |
| - 1 | Item weergeven voor bewerken | OLEIVERB_SHOW |
| - 2 | Item bewerken in een afzonderlijk venster | OLEIVERB_OPEN |
| - 3 | Item verbergen | OLEIVERB_HIDE |
De -1 waarde is doorgaans een alias voor een ander werkwoord. Als openen bewerken niet wordt ondersteund, heeft -2 hetzelfde effect als -1. Zie IOleObject::D oVerb in de Windows SDK voor meer waarden.
pView-
Aanwijzer naar het weergavevenster; dit wordt gebruikt door de server voor in-place activering. Deze parameter moet NULL zijn als de containertoepassing in-place activering niet toestaat.
lpMsg-
Aanwijzer naar het bericht waardoor het item is geactiveerd.
Retourwaarde
Nonzero als het werkwoord is uitgevoerd; anders 0.
Opmerkingen
Met deze functie wordt de functie Lid activeren aangeroepen om het werkwoord uit te voeren. Het onderschept ook uitzonderingen en geeft een berichtvak weer aan de gebruiker als er een wordt gegenereerd.
Als het primaire werkwoord Bewerken is en nul is opgegeven in de parameter nVerb , wordt de servertoepassing gestart om toe te staan dat het OLE-item kan worden bewerkt. Als de containertoepassing in-place activering ondersteunt, kan bewerking worden uitgevoerd. Als de container geen ondersteuning biedt voor in-place activering (of als het open werkwoord is opgegeven), wordt de server gestart in een afzonderlijk venster en kan daar bewerking worden uitgevoerd. Wanneer de gebruiker van de containertoepassing dubbelklikt op het OLE-item, bepaalt de waarde voor het primaire werkwoord in de parameter nVerb doorgaans welke actie de gebruiker kan uitvoeren. Als de server echter slechts één actie ondersteunt, wordt die actie uitgevoerd, ongeacht welke waarde is opgegeven in de parameter nVerb .
COleClientItem::D raw
Roep deze functie aan om het OLE-item te tekenen in de opgegeven begrenzingsrechthoek met behulp van de opgegeven apparaatcontext.
BOOL Draw(
CDC* pDC,
LPCRECT lpBounds,
DVASPECT nDrawAspect = (DVASPECT)-1);
Parameterwaarden
pDC
Wijs een CDC-object aan dat wordt gebruikt voor het tekenen van het OLE-item.
lpBounds
Wijs een CRect-object of RECT -structuur aan waarmee de begrenzingsrechthoek wordt gedefinieerd waarin het OLE-item moet worden getekend (in logische eenheden die worden bepaald door de apparaatcontext).
nDrawAspect-
Hiermee geeft u het aspect van het OLE-item, dat wil gezegd, hoe het moet worden weergegeven. Als nDrawAspect -1 is, wordt het laatste aspect dat is ingesteld met Behulp van SetDrawAspect gebruikt. Zie SetDrawAspect voor meer informatie over mogelijke waarden voor deze vlag.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
De functie kan gebruikmaken van de metabestandweergave van het OLE-item dat is gemaakt door de functie OnDraw-lid van COleServerItem.
Normaal gesproken gebruikt Draw u voor schermweergave, waarbij de context van het schermapparaat wordt doorgegeven als pDC. In dit geval moet u alleen de eerste twee parameters opgeven.
De parameter lpBounds identificeert de rechthoek in de context van het doelapparaat (ten opzichte van de huidige toewijzingsmodus). Rendering kan betrekking hebben op het schalen van de afbeelding en kan worden gebruikt door containertoepassingen om een weergave op te leggen die wordt geschaald tussen de weergegeven weergave en de uiteindelijke afgedrukte afbeelding.
Zie IViewObject::D raw in de Windows SDK voor meer informatie.
COleClientItem::GetActiveView
Retourneert de weergave waarop het item in-place is geactiveerd.
CView* GetActiveView() const;
Retourwaarde
Een aanwijzer naar de weergave; anders NULL als het item niet in-place is geactiveerd.
COleClientItem::GetCachedExtent
Roep deze functie aan om de grootte van het OLE-item op te halen.
BOOL GetCachedExtent(
LPSIZE lpSize,
DVASPECT nDrawAspect = (DVASPECT)-1);
Parameterwaarden
lpSize
Wijs een SIZE structuur of een CSize-object aan waarmee de groottegegevens worden ontvangen.
nDrawAspect-
Hiermee geeft u het aspect van het OLE-item waarvan de grenzen moeten worden opgehaald. Zie SetDrawAspect voor mogelijke waarden.
Retourwaarde
Niet-nul indien geslaagd; 0 als het OLE-item leeg is.
Opmerkingen
Deze functie biedt dezelfde informatie als GetExtent. U kunt echter informatie over de omvang aanroepen GetCachedExtent tijdens de verwerking van andere OLE-handlers, zoals OnChange. De dimensies bevinden zich in MM_HIMETRIC eenheden.
Dit is mogelijk omdat GetCachedExtent de interface IViewObject2 wordt gebruikt in plaats van de IOleObject-interface te gebruiken om de omvang van dit item op te halen. Het IViewObject2 COM-object slaat de gebieden in de cache op die in de vorige aanroep naar IViewObject::D raw worden gebruikt.
Zie IViewObject2::GetExtent in de Windows SDK voor meer informatie.
COleClientItem::GetClassID
Retourneert de klasse-id van het item in het geheugen dat wordt verwezen door pClassID.
void GetClassID(CLSID* pClassID) const;
Parameterwaarden
pClassID
Wijs een id van het type CLSID aan om de klasse-id op te halen. Zie de Windows SDK voor meer informatie over CLSID.
Opmerkingen
De klasse-id is een 128-bits nummer waarmee de toepassing die het item bewerkt, uniek wordt geïdentificeerd.
Zie IPersist::GetClassID in de Windows SDK voor meer informatie.
COleClientItem::GetClipboardData
Roep deze functie aan om een COleDataSource object op te halen dat alle gegevens bevat die op het Klembord worden geplaatst door een aanroep naar de functie CopyToClipboard-lid .
void GetClipboardData(
COleDataSource* pDataSource,
BOOL bIncludeLink = FALSE,
LPPOINT lpOffset = NULL,
LPSIZE lpSize = NULL);
Parameterwaarden
pDataSource
Wijs een COleDataSource-object aan dat de gegevens in het OLE-item ontvangt.
bIncludeLink
WAAR als koppelingsgegevens moeten worden opgenomen; anders ONWAAR.
lpOffset
De verschuiving van de muiscursor van de oorsprong van het object in pixels.
lpSize
De grootte van het object in pixels.
Opmerkingen
GetClipboardData wordt aangeroepen als de standaard implementatie van OnGetClipboardData. Overschrijven OnGetClipboardData alleen als u gegevensindelingen wilt aanbieden naast de indelingen die worden aangeboden door CopyToClipboard. Plaats deze notaties in het COleDataSource object vóór of na het aanroepen CopyToClipboarden geef het COleDataSource object vervolgens door aan de functie COleDataSource::SetClipboard . Als u bijvoorbeeld wilt dat de positie van het OLE-item in het containerdocument bij het Klembord hoort, definieert u uw eigen indeling voor het doorgeven van die informatie en plaatst u het in de COleDataSource plaats voordat u aanroept CopyToClipboard.
COleClientItem::GetDocument
Roep deze functie aan om een aanwijzer te krijgen naar het document dat het OLE-item bevat.
COleDocument* GetDocument() const;
Retourwaarde
Een aanwijzer naar het document dat het OLE-item bevat. NULL als het item geen deel uitmaakt van een document.
Opmerkingen
Met deze aanwijzer krijgt u toegang tot het COleDocument object dat u als argument aan de COleClientItem constructor hebt doorgegeven.
COleClientItem::GetDrawAspect
Roep de GetDrawAspect lidfunctie aan om het huidige 'aspect' of de weergave van het item te bepalen.
DVASPECT GetDrawAspect() const;
Retourwaarde
Een waarde uit de opsomming DVASPECT, waarvan de waarden worden vermeld in de verwijzing voor SetDrawAspect.
Opmerkingen
Het aspect geeft aan hoe het item moet worden weergegeven.
COleClientItem::GetExtent
Roep deze functie aan om de grootte van het OLE-item op te halen.
BOOL GetExtent(
LPSIZE lpSize,
DVASPECT nDrawAspect = (DVASPECT)- 1);
Parameterwaarden
lpSize
Wijs een SIZE structuur of een CSize object aan dat de groottegegevens ontvangt.
nDrawAspect-
Hiermee geeft u het aspect van het OLE-item waarvan de grenzen moeten worden opgehaald. Zie SetDrawAspect voor mogelijke waarden.
Retourwaarde
Niet-nul indien geslaagd; 0 als het OLE-item leeg is.
Opmerkingen
Als de servertoepassing is geschreven met behulp van de Microsoft Foundation Class Library, zorgt deze functie ervoor dat de onGetExtent-lidfunctie van het bijbehorende COleServerItem object wordt aangeroepen. Houd er rekening mee dat de opgehaalde grootte kan verschillen van de grootte die het laatst is ingesteld door de functie SetExtent-lid ; de grootte die is opgegeven door SetExtent , wordt behandeld als een suggestie. De dimensies bevinden zich in MM_HIMETRIC eenheden.
Opmerking
Niet aanroepen GetExtent tijdens de verwerking van een OLE-handler, zoals OnChange. Roep in plaats daarvan GetCachedExtent aan.
Zie IOleObject::GetExtent in de Windows SDK voor meer informatie.
COleClientItem::GetIconFromRegistry
Roep deze lidfunctie aan om een ingang op te halen naar een pictogramresource die is gekoppeld aan de server van een bepaalde CLSID.
HICON GetIconFromRegistry() const;
static HICON GetIconFromRegistry(CLSID& clsid);
Parameterwaarden
clsid-
Een verwijzing naar de CLSID voor de server die is gekoppeld aan het pictogram.
Retourwaarde
Een geldige ingang voor de pictogramresource of NULL als het pictogram van de server of een standaardpictogram niet kan worden gevonden.
Opmerkingen
Met deze lidfunctie wordt de server niet gestart of wordt er dynamisch een pictogram verkregen, zelfs niet als de server al wordt uitgevoerd. In plaats daarvan opent deze lidfunctie de uitvoerbare installatiekopieën van de server en haalt het statische pictogram op dat is gekoppeld aan de server terwijl deze is geregistreerd.
COleClientItem::GetIconicMetafile
Hiermee wordt het metabestand opgehaald dat wordt gebruikt voor het tekenen van het pictogram van het item.
HGLOBAL GetIconicMetafile();
Retourwaarde
Een ingang naar het metabestand indien geslaagd; anders NULL.
Opmerkingen
Als er geen huidig pictogram is, wordt er een standaardpictogram geretourneerd. Dit wordt automatisch aangeroepen door de MFC/OLE-dialoogvensters en wordt meestal niet rechtstreeks aangeroepen.
Met deze functie wordt ook SetIconicMetafile aangeroepen om het metabestand op te cachen voor later gebruik.
COleClientItem::GetInPlaceWindow
Roep de GetInPlaceWindow lidfunctie aan om een aanwijzer te krijgen naar het venster waarin het item is geopend voor in-place bewerking.
CWnd* GetInPlaceWindow();
Retourwaarde
Een aanwijzer naar het in-place bewerkingsvenster van het item; NULL als het item niet actief is of als de server niet beschikbaar is.
Opmerkingen
Deze functie mag alleen worden aangeroepen voor items die in-place actief zijn.
COleClientItem::GetItemState
Roep deze functie aan om de huidige status van het OLE-item op te halen.
UINT GetItemState() const;
Retourwaarde
Een COleClientItem::ItemState opgesomde waarde, die een van de volgende kan zijn: emptyState, loadedState, openState, activeState. activeUIState Zie het artikel Containers: Client-Item States voor meer informatie over deze statussen.
Opmerkingen
Als u een melding wilt ontvangen wanneer de status van het OLE-item wordt gewijzigd, gebruikt u de functie OnChange-lid .
Zie het artikel Containers: Client-Item States voor meer informatie.
COleClientItem::GetLastStatus
Retourneert de statuscode van de laatste OLE-bewerking.
SCODE GetLastStatus() const;
Retourwaarde
Een SCODE-waarde.
Opmerkingen
Voor lidfuncties die een BOOL-waarde retourneren van FALSE of andere lidfuncties die NULL retourneren, GetLastStatus worden meer gedetailleerde foutinformatie geretourneerd. Houd er rekening mee dat de meeste OLE-lidfuncties uitzonderingen genereren voor ernstigere fouten. De specifieke informatie over de interpretatie van de SCODE is afhankelijk van de onderliggende OLE-aanroep die voor het laatst een SCODE-waarde heeft geretourneerd.
Zie Structuur van COM-foutcodes in de Windows SDK-documentatie voor meer informatie over SCODE.
COleClientItem::GetLinkUpdateOptions
Roep deze functie aan om de huidige waarde van de optie koppelingsupdate voor het OLE-item op te halen.
OLEUPDATE GetLinkUpdateOptions();
Retourwaarde
Een van de volgende waarden:
OLEUPDATE_ALWAYS het gekoppelde item indien mogelijk bijwerken. Deze optie ondersteunt het keuzerondje Automatisch bijwerken van koppelingen in het dialoogvenster Koppelingen.
OLEUPDATE_ONCALL Het gekoppelde item alleen op aanvraag bijwerken vanuit de containertoepassing (wanneer de functie UpdateLink-lid wordt aangeroepen). Deze optie ondersteunt het keuzerondje Handmatig bijwerken van koppelingen in het dialoogvenster Koppelingen.
Opmerkingen
Dit is een geavanceerde bewerking.
Deze functie wordt automatisch aangeroepen door de klasse COleLinksDialog .
Zie IOleLink::GetUpdateOptions in de Windows SDK voor meer informatie.
COleClientItem::GetType
Roep deze functie aan om te bepalen of het OLE-item is ingesloten of gekoppeld, of statisch.
OLE_OBJTYPE GetType() const;
Retourwaarde
Een geheel getal zonder teken met een van de volgende waarden:
OT_LINK Het OLE-item is een koppeling.
OT_EMBEDDED Het OLE-item is ingesloten.
OT_STATIC Het OLE-item is statisch, dat wil gezegd: het bevat alleen presentatiegegevens, geen systeemeigen gegevens en kan dus niet worden bewerkt.
COleClientItem::GetUserType
Roep deze functie aan om de door de gebruiker zichtbare tekenreeks op te halen die het type OLE-item beschrijft, zoals 'Word-document'.
void GetUserType(
USERCLASSTYPE nUserClassType,
CString& rString);
Parameterwaarden
nUserClassType
Een waarde die de gewenste variant van de tekenreeks aangeeft die het type van het OLE-item beschrijft. Dit kan een van de volgende waarden hebben:
USERCLASSTYPE_FULL De volledige typenaam die wordt weergegeven aan de gebruiker.
USERCLASSTYPE_SHORT Een korte naam (maximaal 15 tekens) voor gebruik in pop-upmenu's en het dialoogvenster Koppelingen bewerken.
USERCLASSTYPE_APPNAME naam van de toepassing die de klasse onderhoudt.
rString
Een verwijzing naar een CString-object waarnaar de tekenreeks die het type van het OLE-item beschrijft, moet worden geretourneerd.
Opmerkingen
Dit is vaak de vermelding in de systeemregistratiedatabase.
Als de volledige typenaam wordt aangevraagd maar niet beschikbaar is, wordt in plaats daarvan de korte naam gebruikt. Als er geen vermelding voor het type OLE-item wordt gevonden in de registratiedatabase of als er geen gebruikerstypen zijn geregistreerd voor het type OLE-item, wordt het gebruikerstype gebruikt dat momenteel is opgeslagen in het OLE-item. Als deze gebruikersnaam een lege tekenreeks is, wordt 'Onbekend object' gebruikt.
Zie IOleObject::GetUserType in de Windows SDK voor meer informatie.
COleClientItem::IsInPlaceActive
Roep deze functie aan om te zien of het OLE-item actief is.
BOOL IsInPlaceActive() const;
Retourwaarde
Niet-nul als het OLE-item actief is; anders 0.
Opmerkingen
Het is gebruikelijk om verschillende logica uit te voeren, afhankelijk van of het item wordt bewerkt. De functie controleert of de huidige itemstatus gelijk is aan de activeState of de activeUIState.
COleClientItem::IsLinkUpToDate
Roep deze functie aan om te zien of het OLE-item up-to-date is.
BOOL IsLinkUpToDate() const;
Retourwaarde
Niet-nul als het OLE-item up-to-date is; anders 0.
Opmerkingen
Een gekoppeld item kan verouderd zijn als het brondocument is bijgewerkt. Een ingesloten item dat koppelingen bevat, kan op dezelfde manier verouderd worden. De functie voert een recursieve controle uit van het OLE-item. Houd er rekening mee dat het bepalen of een OLE-item verouderd is, net zo duur kan zijn als het uitvoeren van een update.
Dit wordt automatisch aangeroepen door de COleLinksDialog-implementatie .
Zie IOleObject::IsUpToDate in de Windows SDK voor meer informatie.
COleClientItem::IsModified
Roep deze functie aan om te zien of het OLE-item vuil is (gewijzigd sinds het laatst is opgeslagen).
BOOL IsModified() const;
Retourwaarde
Niet-nul als het OLE-item vuil is; anders 0.
Opmerkingen
Zie IPersistStorage::IsDirty in de Windows SDK voor meer informatie.
COleClientItem::IsOpen
Roep deze functie aan om te zien of het OLE-item is geopend; dat wil gezegd, geopend in een exemplaar van de servertoepassing die in een afzonderlijk venster wordt uitgevoerd.
BOOL IsOpen() const;
Retourwaarde
Niet-nul als het OLE-item is geopend; anders 0.
Opmerkingen
Het wordt gebruikt om te bepalen wanneer het object met een luikpatroon moet worden getekend. Een open object moet een luikpatroon hebben dat boven op het object is getekend. U kunt hiervoor een CRectTracker-object gebruiken.
COleClientItem::IsRunning
Roep deze functie aan om te zien of het OLE-item wordt uitgevoerd; dat wil gezegd, of het item is geladen en wordt uitgevoerd in de servertoepassing.
BOOL IsRunning() const;
Retourwaarde
Niet-nul als het OLE-item wordt uitgevoerd; anders 0.
Opmerkingen
Zie OleIsRunning in de Windows SDK voor meer informatie.
COleClientItem::OnActivate
Wordt door het framework aangeroepen om het item op de hoogte te stellen dat het zojuist is geactiveerd.
virtual void OnActivate();
Opmerkingen
Houd er rekening mee dat deze functie wordt aangeroepen om aan te geven dat de server wordt uitgevoerd, niet om aan te geven dat de gebruikersinterface is geïnstalleerd in de containertoepassing. Op dit moment heeft het object geen actieve gebruikersinterface (niet activeUIState). De menu's of werkbalk zijn niet geïnstalleerd. De onActivateUI-lidfunctie wordt aangeroepen wanneer dat gebeurt.
De standaard implementatie roept de functie OnChange-lid aan met OLE_CHANGEDSTATE als parameter. Overschrijf deze functie om aangepaste verwerking uit te voeren wanneer een item in-place actief wordt.
COleClientItem::OnActivateUI
Het framework roept aan OnActivateUI wanneer het object de actieve UI-status heeft ingevoerd.
virtual void OnActivateUI();
Opmerkingen
Het object heeft nu de werkbalk en menu's geïnstalleerd.
De standaard implementatie onthoudt de HWND van de server voor latere GetServerWindow aanroepen.
COleClientItem::OnChange
Aangeroepen door het framework wanneer de gebruiker het OLE-item wijzigt, opslaat of sluit.
virtual void OnChange(
OLE_NOTIFICATION nCode,
DWORD dwParam);
Parameterwaarden
nCode-
De reden waarom de server dit item heeft gewijzigd. Het kan een van de volgende waarden hebben:
OLE_CHANGED het uiterlijk van het OLE-item is gewijzigd.
OLE_SAVED Het OLE-item is opgeslagen.
OLE_CLOSED Het OLE-item is gesloten.
OLE_CHANGED_STATE Het OLE-item is gewijzigd van de ene status naar het andere.
dwParam
Als nCode is OLE_SAVED of OLE_CLOSED, wordt deze parameter niet gebruikt. Als nCode is OLE_CHANGED, geeft deze parameter het aspect op van het OLE-item dat is gewijzigd. Zie de parameter dwParam van COleClientItem::D raw voor mogelijke waarden. Als nCode is OLE_CHANGED_STATE, is deze parameter een COleClientItem::ItemState geïnventariseerd waarde en wordt de status beschreven die wordt ingevoerd. Het kan een van de volgende waarden hebben: emptyState, loadedState, openState, of activeStateactiveUIState.
Opmerkingen
(Als de servertoepassing is geschreven met behulp van de Microsoft Foundation Class Library, wordt deze functie aangeroepen als reactie op de Notify lidfuncties van COleServerDoc of COleServerItem.) De standaard implementatie markeert het containerdocument zoals gewijzigd als nCode is OLE_CHANGED of OLE_SAVED.
Voor OLE_CHANGED_STATE is de huidige status die wordt geretourneerd vanuit GetItemState nog steeds de oude status, wat betekent dat de status die vóór deze statuswijziging actueel was.
Overschrijf deze functie om te reageren op wijzigingen in de status van het OLE-item. Normaal gesproken werkt u het uiterlijk van het item bij door het gebied waarin het item wordt weergegeven, ongeldig te maken. Roep de basisklasse-implementatie aan aan het begin van uw onderdrukking.
COleClientItem::OnChangeItemPosition
Aangeroepen door het framework om de container op de hoogte te stellen dat de omvang van het OLE-item is gewijzigd tijdens in-place activering.
virtual BOOL OnChangeItemPosition(const CRect& rectPos);
Parameterwaarden
rectPos
Geeft de positie van het item aan ten opzichte van het clientgebied van de containertoepassing.
Retourwaarde
Niet-nul als de positie van het item is gewijzigd; anders 0.
Opmerkingen
De standaardimplementatie bepaalt de nieuwe zichtbare rechthoek van het OLE-item en roept SetItemRects aan met de nieuwe waarden. De standaard implementatie berekent de zichtbare rechthoek voor het item en geeft die informatie door aan de server.
Overschrijf deze functie om speciale regels toe te passen op de bewerking voor het wijzigen/verplaatsen van het formaat. Als de toepassing is geschreven in MFC, wordt deze aanroep uitgevoerd omdat de server COleServerDoc::RequestPositionChange.
COleClientItem::OnDeactivate
Aangeroepen door het framework wanneer het OLE-item overgaat van de in-place actieve status (activeState) naar de geladen status, wat betekent dat het wordt gedeactiveerd na een in-place activering.
virtual void OnDeactivate();
Opmerkingen
Houd er rekening mee dat deze functie wordt aangeroepen om aan te geven dat het OLE-item is gesloten, niet dat de gebruikersinterface is verwijderd uit de containertoepassing. Als dat gebeurt, wordt de functie OnDeactivateUI-lid aangeroepen.
De standaard implementatie roept de functie OnChange-lid aan met OLE_CHANGEDSTATE als parameter. Overschrijf deze functie om aangepaste verwerking uit te voeren wanneer een in-place actief item wordt gedeactiveerd. Als u bijvoorbeeld de opdracht ongedaan maken in uw containertoepassing ondersteunt, kunt u deze functie overschrijven om de status Ongedaan maken te negeren, waarmee wordt aangegeven dat de laatste bewerking die op het OLE-item is uitgevoerd, niet ongedaan kan worden gemaakt zodra het item is gedeactiveerd.
COleClientItem::OnDeactivateAndUndo
Aangeroepen door het framework wanneer de gebruiker de opdracht ongedaan maken aanroept nadat het OLE-item is geactiveerd.
virtual void OnDeactivateAndUndo();
Opmerkingen
De standaardimplementatie roept DeactivateUI aan om de gebruikersinterface van de server te deactiveren. Overschrijf deze functie als u de opdracht ongedaan maken in uw containertoepassing implementeert. Roep in uw onderdrukking de basisklasseversie van de functie aan en maak vervolgens de laatste opdracht ongedaan die in uw toepassing is uitgevoerd.
Zie IOleInPlaceSite::D eactivateAndUndo in de Windows SDK voor meer informatie.
COleClientItem::OnDeactivateUI
Aangeroepen wanneer de gebruiker een item deactiveert dat is geactiveerd.
virtual void OnDeactivateUI(BOOL bUndoable);
Parameterwaarden
bUndoable
Hiermee geeft u op of de bewerkingswijzigingen ongedaan kunnen worden.
Opmerkingen
Met deze functie herstelt u de gebruikersinterface van de containertoepassing naar de oorspronkelijke staat, waarbij menu's en andere besturingselementen worden verborgen die zijn gemaakt voor in-place activering.
Als bUndoable FALSE is, moet de container de opdracht ongedaan maken uitschakelen, waardoor de status ongedaan maken van de container wordt genegeerd, omdat hiermee wordt aangegeven dat de laatste bewerking die door de server wordt uitgevoerd, niet ongedaan kan worden gemaakt.
COleClientItem::OnDiscardUndoState
Aangeroepen door het framework wanneer de gebruiker een actie uitvoert waarmee de status Ongedaan maken wordt verwijderd tijdens het bewerken van het OLE-item.
virtual void OnDiscardUndoState();
Opmerkingen
De standaard implementatie doet niets. Overschrijf deze functie als u de opdracht ongedaan maken in uw containertoepassing implementeert. Verwijder in uw onderdrukking de status ongedaan maken van de containertoepassing.
Als de server is geschreven met de Microsoft Foundation Class Library, kan de server ervoor zorgen dat deze functie wordt aangeroepen door COleServerDoc::D iscardUndoState aan te roepen.
Zie IOleInPlaceSite::D iscardUndoState in de Windows SDK voor meer informatie.
COleClientItem::OnGetClipboardData
Aangeroepen door het framework om een COleDataSource object op te halen dat alle gegevens bevat die op het Klembord worden geplaatst door een aanroep naar het CopyToClipboard of de doDragDrop-lidfunctie .
virtual COleDataSource* OnGetClipboardData(
BOOL bIncludeLink,
LPPOINT lpOffset,
LPSIZE lpSize);
Parameterwaarden
bIncludeLink
Stel deze optie in op TRUE als koppelingsgegevens naar het Klembord moeten worden gekopieerd. Stel deze optie in op FALSE als uw servertoepassing geen koppelingen ondersteunt.
lpOffset
Wijs de verschuiving van de muiscursor aan vanaf de oorsprong van het object in pixels.
lpSize
Aanwijzer naar de grootte van het object in pixels.
Retourwaarde
Een aanwijzer naar een COleDataSource-object met de Klembordgegevens.
Opmerkingen
De standaard implementatie van deze functie roept GetClipboardData aan.
COleClientItem::OnGetClipRect
Het framework roept de OnGetClipRect lidfunctie aan om de coördinaten van de rechthoek voor knipsels op te halen van het item dat ter plaatse wordt bewerkt.
virtual void OnGetClipRect(CRect& rClipRect);
Parameterwaarden
rClipRect
Wijs een object van klasse CRect aan dat de coördinaten van de rechthoek voor knippen van het item bevat.
Opmerkingen
Coördinaten bevinden zich in pixels ten opzichte van het clientgebied van het containertoepassingsvenster.
De standaard implementatie retourneert simpelweg de clientrechthoek van de weergave waarop het item in-place actief is.
COleClientItem::OnGetItemPosition
Het framework roept de OnGetItemPosition lidfunctie aan om de coördinaten op te halen van het item dat wordt bewerkt.
virtual void OnGetItemPosition(CRect& rPosition);
Parameterwaarden
rPosition
Verwijzing naar het CRect-object dat de positiecoördinaten van het item bevat.
Opmerkingen
Coördinaten bevinden zich in pixels ten opzichte van het clientgebied van het containertoepassingsvenster.
De standaard implementatie van deze functie doet niets. Toepassingen die ondersteuning bieden voor in-place bewerking, vereisen de implementatie.
COleClientItem::OnGetWindowContext
Aangeroepen door het framework wanneer een item is geactiveerd.
virtual BOOL OnGetWindowContext(
CFrameWnd** ppMainFrame,
CFrameWnd** ppDocFrame,
LPOLEINPLACEFRAMEINFO lpFrameInfo);
Parameterwaarden
ppMainFrame
Aanwijzer naar een aanwijzer naar het hoofdframevenster.
ppDocFrame
Aanwijzer naar een aanwijzer naar het venster documentframe.
lpFrameInfo
Wijs een OLEINPLACEFRAMEINFO-structuur aan die informatie over framevensters ontvangt.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Deze functie wordt gebruikt om informatie over het bovenliggende venster van het OLE-item op te halen.
Als de container een MDI-toepassing is, retourneert de standaardimplementatie een aanwijzer naar het CMDIFrameWnd-object in ppMainFrame en een aanwijzer naar het actieve CMDIChildWnd-object in ppDocFrame. Als de container een SDI-toepassing is, retourneert de standaardimplementatie een aanwijzer naar het CFrameWnd-object in ppMainFrame en retourneert NULL in ppDocFrame. De standaard implementatie vult ook de leden van lpFrameInfo in.
Overschrijf deze functie alleen als de standaard implementatie niet geschikt is voor uw toepassing; Als uw toepassing bijvoorbeeld een model voor de gebruikersinterface heeft dat verschilt van SDI of MDI. Dit is een geavanceerd overschrijfbaar.
Zie IOleInPlaceSite::GetWindowContext en de structuur OLEINPLACEFRAMEINFO in de Windows SDK voor meer informatie.
COleClientItem::OnInsertMenus
Aangeroepen door het framework tijdens in-place activering om de menu's van de containertoepassing in te voegen in een leeg menu.
virtual void OnInsertMenus(
CMenu* pMenuShared,
LPOLEMENUGROUPWIDTHS lpMenuWidths);
Parameterwaarden
pMenuShared
Verwijst naar een leeg menu.
lpMenuWidths
Verwijst naar een matrix van zes LANGE waarden die aangeven hoeveel menu's zich in elk van de volgende menugroepen bevinden: Bestand, Bewerken, Container, Object, Venster, Help. De containertoepassing is verantwoordelijk voor de menugroepen Bestand, Container en Venster, die overeenkomen met elementen 0, 2 en 4 van deze matrix.
Opmerkingen
Dit menu wordt vervolgens doorgegeven aan de server, die zijn eigen menu's invoegt en een samengesteld menu maakt. Deze functie kan herhaaldelijk worden aangeroepen om verschillende samengestelde menu's te maken.
De standaard implementatie wordt ingevoegd in pMenuShared de in-place containermenu's; Dat wil gezegd, de menugroepen Bestand, Container en Venster. CDocTemplate::SetContainerInfo wordt gebruikt om deze menuresource in te stellen. De standaardimplementatie wijst ook de juiste waarden toe aan elementen 0, 2 en 4 in lpMenuWidths, afhankelijk van de menuresource. Overschrijf deze functie als de standaard implementatie niet geschikt is voor uw toepassing; Als uw toepassing bijvoorbeeld geen documentsjablonen gebruikt voor het koppelen van resources aan documenttypen. Als u deze functie overschrijft, moet u ook OnSetMenu en OnRemoveMenus overschrijven. Dit is een geavanceerd overschrijfbaar.
Zie IOleInPlaceFrame::InsertMenus in de Windows SDK voor meer informatie.
COleClientItem::OnRemoveMenus
Aangeroepen door het framework om de menu's van de container te verwijderen uit het opgegeven samengestelde menu wanneer in-place activering eindigt.
virtual void OnRemoveMenus(CMenu* pMenuShared);
Parameterwaarden
pMenuShared
Verwijst naar het samengestelde menu dat is samengesteld door aanroepen naar de lidfunctie OnInsertMenus .
Opmerkingen
De standaard implementatie verwijdert uit pMenuShared de in-place containermenu's, dat wil gezegd, de menugroepen Bestand, Container en Venster. Overschrijf deze functie als de standaard implementatie niet geschikt is voor uw toepassing; Als uw toepassing bijvoorbeeld geen documentsjablonen gebruikt voor het koppelen van resources aan documenttypen. Als u deze functie overschrijft, moet u onInsertMenus en OnSetMenu waarschijnlijk ook overschrijven. Dit is een geavanceerd overschrijfbaar.
De submenu's op pMenuShared kunnen worden gedeeld door meer dan één samengesteld menu als de server herhaaldelijk heeft aangeroepen OnInsertMenus. Daarom moet u geen submenu's verwijderen in uw onderdrukking van OnRemoveMenus; u mag ze alleen loskoppelen.
Zie IOleInPlaceFrame::RemoveMenus in de Windows SDK voor meer informatie.
COleClientItem::OnScrollBy
Wordt door het framework aangeroepen om het OLE-item te schuiven als reactie op aanvragen van de server.
virtual BOOL OnScrollBy(CSize sizeExtent);
Parameterwaarden
sizeExtent
Hiermee geeft u de afstanden in pixels op om in de x- en y-richtingen te schuiven.
Retourwaarde
Niet-nul als het item is geschoven; 0 als het item niet kan worden geschoven.
Opmerkingen
Als het OLE-item bijvoorbeeld gedeeltelijk zichtbaar is en de gebruiker zich buiten het zichtbare gebied verplaatst tijdens het uitvoeren van in-place bewerking, wordt deze functie aangeroepen om de cursor zichtbaar te houden. De standaard implementatie doet niets. Overschrijf deze functie om het item met de opgegeven hoeveelheid te schuiven. Houd er rekening mee dat als gevolg van schuiven het zichtbare gedeelte van het OLE-item kan worden gewijzigd. Roep SetItemRects aan om de zichtbare rechthoek van het item bij te werken.
Zie IOleInPlaceSite::Scroll in de Windows SDK voor meer informatie.
COleClientItem::OnSetMenu
Twee keer aangeroepen door het framework wanneer in-place activering begint en eindigt; de eerste keer om het samengestelde menu en de tweede keer (met holemenu gelijk aan NULL) te installeren om het te verwijderen.
virtual void OnSetMenu(
CMenu* pMenuShared,
HOLEMENU holemenu,
HWND hwndActiveObject);
Parameterwaarden
pMenuShared
Wijs het samengestelde menu aan dat is samengesteld door aanroepen naar de lidfunctie OnInsertMenus en de InsertMenu functie.
holemenu
Greep naar de menudescriptor die wordt geretourneerd door de OleCreateMenuDescriptor functie of NULL als de verzendcode moet worden verwijderd.
hwndActiveObject
Greep naar het bewerkingsvenster voor het OLE-item. Dit is het venster dat bewerkingsopdrachten van OLE ontvangt.
Opmerkingen
De standaard implementatie installeert of verwijdert het samengestelde menu en roept vervolgens de functie OleSetMenuDescriptor aan om de verzendcode te installeren of te verwijderen. Overschrijf deze functie als de standaard implementatie niet geschikt is voor uw toepassing. Als u deze functie overschrijft, moet u onInsertMenus en OnRemoveMenus waarschijnlijk ook overschrijven. Dit is een geavanceerd overschrijfbaar.
Zie OleCreateMenuDescriptor, OleSetMenuDescriptor en IOleInPlaceFrame::SetMenu in de Windows SDK voor meer informatie.
COleClientItem::OnShowControlBars
Aangeroepen door het framework om de besturingsbalken van de containertoepassing weer te geven en te verbergen.
virtual BOOL OnShowControlBars(
CFrameWnd* pFrameWnd,
BOOL bShow);
Parameterwaarden
pFrameWnd
Wijs het framevenster van de containertoepassing aan. Dit kan een hoofdframevenster of een onderliggend MDI-venster zijn.
bShow
Hiermee geeft u op of besturingsbalken moeten worden weergegeven of verborgen.
Retourwaarde
Niet-nul als de functie-aanroep een wijziging veroorzaakt in de status van de besturingsbalken; 0 als de aanroep geen wijziging veroorzaakt of als pFrameWnd niet verwijst naar het framevenster van de container.
Opmerkingen
Deze functie retourneert 0 als de besturingsbalken al de status hebben die is opgegeven door bShow. Dit zou bijvoorbeeld gebeuren als de besturingsbalken verborgen zijn en bShow ONWAAR is.
De standaard implementatie verwijdert de werkbalk uit het framevenster op het hoogste niveau.
COleClientItem::OnShowItem
Aangeroepen door het framework om het OLE-item weer te geven, waardoor het volledig zichtbaar is tijdens het bewerken.
virtual void OnShowItem();
Opmerkingen
Deze wordt gebruikt wanneer uw containertoepassing koppelingen naar ingesloten items ondersteunt (dat wil gezegd, als u uw documentklasse hebt afgeleid van COleLinkingDoc). Deze functie wordt aangeroepen tijdens in-place activering of wanneer het OLE-item een koppelingsbron is en de gebruiker deze wil bewerken. De standaard implementatie activeert de eerste weergave in het containerdocument. Overschrijf deze functie om door het document te schuiven, zodat het OLE-item zichtbaar is.
COleClientItem::OnUpdateFrameTitle
Aangeroepen door het framework tijdens in-place activering om de titelbalk van het framevenster bij te werken.
virtual BOOL OnUpdateFrameTitle();
Retourwaarde
Niet-nul als deze functie de titel van het frame heeft bijgewerkt, anders nul.
Opmerkingen
De standaard implementatie wijzigt de titel van het framevenster niet. Overschrijf deze functie als u een andere frametitel voor uw toepassing wilt, bijvoorbeeld 'server-app-item - in docname' (zoals in 'Microsoft Excel - spreadsheet in REPORT.DOC'). Dit is een geavanceerd overschrijfbaar.
COleClientItem::ReactivateAndUndo
Roep deze functie aan om het OLE-item opnieuw te activeren en de laatste bewerking ongedaan te maken die door de gebruiker is uitgevoerd tijdens het bewerken van de in-place bewerking.
BOOL ReactivateAndUndo();
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Als de containertoepassing de opdracht ongedaan maken ondersteunt, roept u deze functie aan als de gebruiker de opdracht Ongedaan maken kiest direct na het deactiveren van het OLE-item.
Als de servertoepassing is geschreven met de Microsoft Foundation Class Libraries, zorgt deze functie ervoor dat de server COleServerDoc::OnReactivateAndUndo aanroept.
Zie IOleInPlaceObject::ReactivateAndUndo in de Windows SDK voor meer informatie.
COleClientItem::Release
Roep deze functie aan om resources op te schonen die door het OLE-item worden gebruikt.
virtual void Release(OLECLOSE dwCloseOption = OLECLOSE_NOSAVE);
Parameterwaarden
dwCloseOption-
Vlag die aangeeft onder welke omstandigheden het OLE-item wordt opgeslagen wanneer het terugkeert naar de geladen status. Zie COleClientItem::Close voor een lijst met mogelijke waarden.
Opmerkingen
Release wordt aangeroepen door de COleClientItem destructor.
Zie IUnknown::Release in de Windows SDK voor meer informatie.
COleClientItem::Reload
Het item wordt gesloten en opnieuw geladen.
BOOL Reload();
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Roep de Reload functie aan nadat u het item hebt geactiveerd als een item van een ander type door een aanroep naar ActivateAs.
COleClientItem::Run
Hiermee wordt de toepassing uitgevoerd die aan dit item is gekoppeld.
void Run();
Opmerkingen
Roep de Run lidfunctie aan om de servertoepassing te starten voordat u het item activeert. Dit wordt automatisch gedaan door Activeren en DoVerb, dus het is meestal niet nodig om deze functie aan te roepen. Roep deze functie aan als het nodig is om de server uit te voeren om een itemkenmerk, zoals SetExtent, in te stellen voordat DoVerb wordt uitgevoerd.
COleClientItem::SetDrawAspect
Roep de SetDrawAspect lidfunctie aan om het 'aspect' of de weergave van het item in te stellen.
virtual void SetDrawAspect(DVASPECT nDrawAspect);
Parameterwaarden
nDrawAspect-
Een waarde uit de opsomming DVASPECT. Deze parameter kan een van de volgende waarden hebben:
DVASPECT_CONTENT item wordt weergegeven op een zodanige manier dat het kan worden weergegeven als een ingesloten object in de container.
DVASPECT_THUMBNAIL Item wordt weergegeven in een miniatuurweergave, zodat het kan worden weergegeven in een browserprogramma.
DVASPECT_ICON item wordt vertegenwoordigd door een pictogram.
DVASPECT_DOCPRINT item wordt weergegeven alsof het is afgedrukt met behulp van de opdracht Afdrukken in het menu Bestand.
Opmerkingen
Het aspect geeft aan hoe het item moet worden weergegeven door Tekenen wanneer de standaardwaarde voor het argument nDrawAspect van die functie wordt gebruikt.
Deze functie wordt automatisch aangeroepen door het wijzigingspictogram (en andere dialoogvensters die het dialoogvenster Pictogram wijzigen rechtstreeks aanroepen) om het iconische weergave-aspect in te schakelen wanneer dit door de gebruiker wordt aangevraagd.
COleClientItem::SetExtent
Roep deze functie aan om op te geven hoeveel ruimte beschikbaar is voor het OLE-item.
void SetExtent(
const CSize& size,
DVASPECT nDrawAspect = DVASPECT_CONTENT);
Parameterwaarden
grootte
Een CSize-object dat de groottegegevens bevat.
nDrawAspect-
Hiermee geeft u het aspect van het OLE-item waarvan de grenzen moeten worden ingesteld. Zie SetDrawAspect voor mogelijke waarden.
Opmerkingen
Als de servertoepassing is geschreven met behulp van de Microsoft Foundation Class Library, zorgt dit ervoor dat de functie OnSetExtent-lid van het bijbehorende COleServerItem object wordt aangeroepen. Het OLE-item kan vervolgens de weergave aanpassen. De afmetingen moeten in MM_HIMETRIC eenheden staan. Roep deze functie aan wanneer de gebruiker de grootte van het OLE-item wijzigt of als u een vorm van indelingsonderhandeling ondersteunt.
Zie IOleObject::SetExtent in de Windows SDK voor meer informatie.
COleClientItem::SetHostNames
Roep deze functie aan om de naam van de containertoepassing en de naam van de container voor een ingesloten OLE-item op te geven.
void SetHostNames(
LPCTSTR lpszHost,
LPCTSTR lpszHostObj);
Parameterwaarden
lpszHost-
Aanwijzer naar de door de gebruiker zichtbare naam van de containertoepassing.
lpszHostObj-
Wijs een identificatietekenreeks aan van de container die het OLE-item bevat.
Opmerkingen
Als de servertoepassing is geschreven met behulp van de Microsoft Foundation Class Library, roept deze functie de lidfunctie OnSetHostNames aan van het COleServerDoc document dat het OLE-item bevat. Deze informatie wordt gebruikt in venstertitels wanneer het OLE-item wordt bewerkt. Telkens wanneer een containerdocument wordt geladen, roept het framework deze functie aan voor alle OLE-items in het document.
SetHostNames is alleen van toepassing op ingesloten items. Het is niet nodig om deze functie aan te roepen telkens wanneer een ingesloten OLE-item wordt geactiveerd voor bewerking.
Dit wordt ook automatisch aangeroepen met de naam van de toepassing en documentnaam wanneer een object wordt geladen of wanneer een bestand onder een andere naam wordt opgeslagen. Daarom is het meestal niet nodig om deze functie rechtstreeks aan te roepen.
Zie IOleObject::SetHostNames in de Windows SDK voor meer informatie.
COleClientItem::SetIconicMetafile
Slaat het metabestand op dat wordt gebruikt voor het tekenen van het itempictogram.
BOOL SetIconicMetafile(HGLOBAL hMetaPict);
Parameterwaarden
hMetaPict
Een ingang naar het metabestand dat wordt gebruikt voor het tekenen van het pictogram van het item.
Retourwaarde
Niet-nul indien geslaagd; anders 0.
Opmerkingen
Gebruik GetIconicMetafile om het metabestand op te halen.
De parameter hMetaPict wordt gekopieerd naar het item; daarom moet hMetaPict worden vrijgemaakt door de beller.
COleClientItem::SetItemRects
Roep deze functie aan om de begrenzingsrechthoek of de zichtbare rechthoek van het OLE-item in te stellen.
BOOL SetItemRects(
LPCRECT lpPosRect = NULL,
LPCRECT lpClipRect = NULL);
Parameterwaarden
lprcPosRect
Aanwijzer naar de rechthoek met de grenzen van het OLE-item ten opzichte van het bovenliggende venster, in clientcoördinaten.
lprcClipRect
Aanwijzer naar de rechthoek met de grenzen van het zichtbare gedeelte van het OLE-item ten opzichte van het bovenliggende venster, in clientcoördinaten.
Retourwaarde
Niet-nul indien geslaagd; anders, 0.
Opmerkingen
Deze functie wordt aangeroepen door de standaardimplementatie van de lidfunctie OnChangeItemPosition . U moet deze functie aanroepen wanneer het positie- of zichtbare gedeelte van het OLE-item wordt gewijzigd. Dit betekent meestal dat u deze aanroept vanuit de functies OnSize en OnScrollBy van uw weergave.
Zie IOleInPlaceObject::SetObjectRects in de Windows SDK voor meer informatie.
COleClientItem::SetLinkUpdateOptions
Roep deze functie aan om de optie voor het bijwerken van koppelingen in te stellen voor de presentatie van het opgegeven gekoppelde item.
void SetLinkUpdateOptions(OLEUPDATE dwUpdateOpt);
Parameterwaarden
dwUpdateOpt
De waarde van de optie voor het bijwerken van koppelingen voor dit item. Deze waarde moet een van de volgende zijn:
OLEUPDATE_ALWAYS het gekoppelde item indien mogelijk bijwerken. Deze optie ondersteunt het keuzerondje Automatisch bijwerken van koppelingen in het dialoogvenster Koppelingen.
OLEUPDATE_ONCALL Het gekoppelde item alleen op aanvraag bijwerken vanuit de containertoepassing (wanneer de functie UpdateLink-lid wordt aangeroepen). Deze optie ondersteunt het keuzerondje Handmatig bijwerken van koppelingen in het dialoogvenster Koppelingen.
Opmerkingen
Normaal gesproken moet u de door de gebruiker gekozen updateopties niet wijzigen in het dialoogvenster Koppelingen.
Zie IOleLink::SetUpdateOptions in de Windows SDK voor meer informatie.
COleClientItem::SetPrintDevice
Roep deze functie aan om het afdrukdoelapparaat voor dit item te wijzigen.
BOOL SetPrintDevice(const DVTARGETDEVICE* ptd);
BOOL SetPrintDevice(const PRINTDLG* ppd);
Parameterwaarden
ptd
Wijs een DVTARGETDEVICE-gegevensstructuur aan, die informatie bevat over het nieuwe print-target-apparaat. Kan NULL zijn.
Wijs een PRINTDLG-gegevensstructuur aan, die informatie bevat over het nieuwe afdrukdoelapparaat. Kan NULL zijn.
Retourwaarde
Niet-nul als de functie is geslaagd; anders 0.
Opmerkingen
Met deze functie wordt het afdrukdoelapparaat voor het item bijgewerkt, maar wordt de presentatiecache niet vernieuwd. Als u de presentatiecache voor een item wilt bijwerken, roept u UpdateLink aan.
De argumenten voor deze functie bevatten informatie die het OLE-systeem gebruikt om het doelapparaat te identificeren. De PRINTDLG structuur bevat informatie die door Windows wordt gebruikt om het algemene dialoogvenster Afdrukken te initialiseren. Nadat de gebruiker het dialoogvenster heeft gesloten, retourneert Windows informatie over de selecties van de gebruiker in deze structuur. Het m_pd lid van een CPrintDialog-object is een PRINTDLG structuur.
Zie PRINTDLG in de Windows SDK voor meer informatie over deze structuur.
Zie DVTARGETDEVICE in de Windows SDK voor meer informatie.
COleClientItem::UpdateLink
Roep deze functie aan om de presentatiegegevens van het OLE-item onmiddellijk bij te werken.
BOOL UpdateLink();
Retourwaarde
Nonzero op succes; anders 0.
Opmerkingen
Voor gekoppelde items zoekt de functie de koppelingsbron om een nieuwe presentatie voor het OLE-item te verkrijgen. Dit proces kan betrekking hebben op het uitvoeren van een of meer servertoepassingen, wat tijdrovend kan zijn. Voor ingesloten items werkt de functie recursief, waarbij wordt gecontroleerd of het ingesloten item koppelingen bevat die mogelijk verouderd zijn en deze bijwerken. De gebruiker kan ook handmatig afzonderlijke koppelingen bijwerken via het dialoogvenster Koppelingen.
Zie IOleLink::Update in de Windows SDK voor meer informatie.
Zie ook
MFC-voorbeeld MFCBIND
MFC-voorbeeld-OCLIENT
CDocItem-klasse
Hiërarchiegrafiek
COleServerItem-klasse