Teilen über


COlePasteSpecialDialog-Klasse

Wird für das OLE-Dialogfeld "Inhalte einfügen" verwendet.

Syntax

class COlePasteSpecialDialog : public COleDialog

Member

Öffentliche Konstruktoren

Name Beschreibung
COlePasteSpecialDialog::COlePasteSpecialDialog Erstellt ein COlePasteSpecialDialog-Objekt.

Öffentliche Methoden

Name Beschreibung
COlePasteSpecialDialog::AddFormat Fügt der Liste der Formate, die Ihre Anwendung einfügen kann, benutzerdefinierte Formate hinzu.
COlePasteSpecialDialog::AddLinkEntry Fügt der Liste der unterstützten Zwischenablageformate einen neuen Eintrag hinzu.
COlePasteSpecialDialog::AddStandardFormats Fügt CF_BITMAP, CF_DIB, CF_METAFILEPICT und optional CF_LINKSOURCE der Liste der Formate hinzu, die Ihre Anwendung einfügen kann.
COlePasteSpecialDialog::CreateItem Erstellt das Element im Containerdokument mithilfe des angegebenen Formats.
COlePasteSpecialDialog::D oModal Zeigt das Dialogfeld "OLE-Inhalte einfügen" an.
COlePasteSpecialDialog::GetDrawAspect Gibt an, ob das Element als Symbol gezeichnet werden soll.
COlePasteSpecialDialog::GetIconicMetafile Ruft ein Handle für die Metadatei ab, die der ikonischen Form dieses Elements zugeordnet ist.
COlePasteSpecialDialog::GetPasteIndex Ruft den Index der verfügbaren Einfügeoptionen ab, die vom Benutzer ausgewählt wurden.
COlePasteSpecialDialog::GetSelectionType Ruft den ausgewählten Auswahltyp ab.

Öffentliche Datenmember

Name Beschreibung
COlePasteSpecialDialog::m_ps Eine Struktur vom Typ OLEUIPASTESPECIAL, die die Funktion des Dialogfelds steuert.

Hinweise

Erstellen Sie ein Klassenobjekt COlePasteSpecialDialog , wenn Sie dieses Dialogfeld aufrufen möchten. Nachdem ein COlePasteSpecialDialog Objekt erstellt wurde, können Sie die Memberfunktionen "AddFormat " und "AddStandardFormats " verwenden, um dem Dialogfeld Zwischenablageformate hinzuzufügen. Sie können auch die m_ps Struktur verwenden, um die Werte oder Zustände von Steuerelementen im Dialogfeld zu initialisieren. Die m_ps Struktur ist vom Typ OLEUIPASTESPECIAL.

Weitere Informationen finden Sie in der OLEUIPASTESPECIAL-Struktur im Windows SDK.

Weitere Informationen zu OLE-spezifischen Dialogfeldern finden Sie im Artikel Dialogfelder in OLE.

Vererbungshierarchie

CObject

CCmdTarget

CWnd

CDialog

CCommonDialog

COleDialog

COlePasteSpecialDialog

Anforderungen

Kopfzeile: afxodlgs.h

COlePasteSpecialDialog::AddFormat

Rufen Sie diese Funktion auf, um der Liste der Formate, die Ihre Anwendung unterstützen kann, in einem Vorgang "Inhalte einfügen" neue Formate hinzuzufügen.

void AddFormat(
    const FORMATETC& formatEtc,
    LPTSTR lpszFormat,
    LPTSTR lpszResult,
    DWORD flags);

void AddFormat(
    UINT cf,
    DWORD tymed,
    UINT nFormatID,
    BOOL bEnableIcon,
    BOOL bLink);

Parameter

Fmt
Verweis auf den hinzuzufügenden Datentyp.

lpszFormat
Zeichenfolge, die das Format für den Benutzer beschreibt.

lpszResult
Zeichenfolge, die das Ergebnis beschreibt, wenn dieses Format im Dialogfeld ausgewählt wird.

flags
Die verschiedenen Verknüpfungs- und Einbettungsoptionen, die für dieses Format verfügbar sind. Dieses Kennzeichen ist eine bitweise Kombination aus mindestens einem der verschiedenen Werte im AUFZÄHLUNGStyp OLEUIPASTEFLAG.

vgl
Das hinzuzufügende Zwischenablageformat.

tymed
Die In diesem Format verfügbaren Medientypen. Dies ist eine bitweise Kombination aus einem oder mehreren Werten im TYMED-Aufzählungstyp.

nFormatID
Die ID der Zeichenfolge, die dieses Format identifiziert. Das Format dieser Zeichenfolge ist zwei separate Zeichenfolgen, die durch ein "\n"-Zeichen getrennt sind. Die erste Zeichenfolge ist identisch, die im lpstrFormat-Parameter übergeben wird, und die zweite ist identisch mit dem lpstrResult-Parameter .

bEnableIcon
Kennzeichen, das bestimmt, ob das Kontrollkästchen "Als Symbol anzeigen" aktiviert ist, wenn dieses Format im Listenfeld ausgewählt wird.

blinzeln
Flag, das bestimmt, ob das Optionsfeld "Link einfügen" aktiviert ist, wenn dieses Format im Listenfeld ausgewählt wird.

Hinweise

Diese Funktion kann aufgerufen werden, um entweder Standardformate wie CF_TEXT oder CF_TIFF oder benutzerdefinierte Formate hinzuzufügen, die Ihre Anwendung beim System registriert hat. Weitere Informationen zum Einfügen von Datenobjekten in Ihre Anwendung finden Sie im Artikel "Data Objects and Data Sources: Manipulation".

Weitere Informationen finden Sie unter dem TYMED-Enumerationstyp und der FORMATTC-Struktur im Windows SDK.

Weitere Informationen finden Sie im Aufzählungstyp OLEUIPASTEFLAG im Windows SDK.

COlePasteSpecialDialog::AddLinkEntry

Fügt der Liste der unterstützten Zwischenablageformate einen neuen Eintrag hinzu.

OLEUIPASTEFLAG AddLinkEntry(UINT cf);

Parameter

vgl
Das hinzuzufügende Zwischenablageformat.

Rückgabewert

Eine OLEUIPASTEFLAG-Struktur , die die Informationen für den neuen Linkeintrag enthält.

COlePasteSpecialDialog::AddStandardFormats

Rufen Sie diese Funktion auf, um die folgenden Formate der Zwischenablage zur Liste der Formate hinzuzufügen, die Ihre Anwendung in einem Vorgang "Inhalte einfügen" unterstützen kann:

void AddStandardFormats(BOOL bEnableLink = TRUE);

Parameter

bEnableLink
Flag, das bestimmt, ob CF_LINKSOURCE zur Liste der Formate hinzugefügt werden soll, die Ihre Anwendung einfügen kann.

Hinweise

  • CF_BITMAP

  • CF_DIB

  • CF_METAFILEPICT

  • "Eingebettetes Objekt"

  • (optional) " Linkquelle"

Diese Formate werden verwendet, um das Einbetten und Verknüpfen zu unterstützen.

COlePasteSpecialDialog::COlePasteSpecialDialog

Erstellt ein COlePasteSpecialDialog-Objekt.

COlePasteSpecialDialog(
    DWORD dwFlags = PSF_SELECTPASTE,
    COleDataObject* pDataObject = NULL,
    CWnd* pParentWnd = NULL);

Parameter

dwFlags
Das Erstellungsflaggen enthält eine beliebige Anzahl der folgenden Flags, die mit dem Bitweise-OR-Operator kombiniert werden:

  • PSF_SELECTPASTE Gibt an, dass das Optionsfeld "Einfügen" beim Aufrufen des Dialogfelds anfangs aktiviert wird. Kann nicht in Kombination mit PSF_SELECTPASTELINK verwendet werden. Dies ist die Standardeinstellung.

  • PSF_SELECTPASTELINK Gibt an, dass das Optionsfeld "Link einfügen" beim Aufrufen des Dialogfelds anfangs aktiviert wird. Kann nicht in Kombination mit PSF_SELECTPASTE verwendet werden.

  • PSF_CHECKDISPLAYASICON Gibt an, dass das Kontrollkästchen "Als Symbol anzeigen" anfangs aktiviert wird, wenn das Dialogfeld aufgerufen wird.

  • PSF_SHOWHELP Gibt an, dass die Schaltfläche "Hilfe" angezeigt wird, wenn das Dialogfeld aufgerufen wird.

pDataObject
Verweist auf das COleDataObject zum Einfügen. Wenn dieser Wert NULL ist, wird der COleDataObject Wert aus der Zwischenablage abgerufen.

pParentWnd
Verweist auf das übergeordnete oder Besitzerfensterobjekt (vom Typ CWnd), zu dem das Dialogobjekt gehört. Wenn es NULL ist, wird das übergeordnete Fenster des Dialogfelds auf das Hauptanwendungsfenster festgelegt.

Hinweise

Diese Funktion erstellt nur ein COlePasteSpecialDialog Objekt. Rufen Sie zum Anzeigen des Dialogfelds die DoModal-Funktion auf.

Weitere Informationen finden Sie im Aufzählungstyp OLEUIPASTEFLAG im Windows SDK.

COlePasteSpecialDialog::CreateItem

Erstellt das neue Element, das im Dialogfeld "Inhalte einfügen" ausgewählt wurde.

BOOL CreateItem(COleClientItem* pNewItem);

Parameter

pNewItem
Verweist auf eine COleClientItem Instanz. Lässt keine NULL-Werte zu.

Rückgabewert

Nonzero, wenn das Element erfolgreich erstellt wurde; andernfalls 0.

Hinweise

Diese Funktion sollte nur aufgerufen werden, nachdem DoModal IDOK zurückgibt.

COlePasteSpecialDialog::D oModal

Zeigt das Dialogfeld "OLE-Inhalte einfügen" an.

virtual INT_PTR DoModal();

Rückgabewert

Abschlussstatus für das Dialogfeld. Einer der folgenden Werte:

  • IDOK, wenn das Dialogfeld erfolgreich angezeigt wurde.

  • IDCANCEL, wenn der Benutzer das Dialogfeld abgebrochen hat.

  • IDABORT, wenn ein Fehler aufgetreten ist. Wenn IDABORT zurückgegeben wird, rufen Sie die COleDialog::GetLastError Memberfunktion auf, um weitere Informationen zum Typ des aufgetretenen Fehlers zu erhalten. Eine Auflistung möglicher Fehler finden Sie in der OleUIPasteSpecial-Funktion im Windows SDK.

Hinweise

Wenn Sie die verschiedenen Dialogfeldsteuerelemente initialisieren möchten, indem Sie Elemente der m_ps-Struktur festlegen, sollten Sie dies vor dem Aufrufen DoModalausführen, aber nach dem Erstellen des Dialogobjekts.

Wenn DoModal IDOK zurückgegeben wird, können Sie andere Memberfunktionen aufrufen, um die Einstellungen oder Informationen vom Benutzer in das Dialogfeld abzurufen.

COlePasteSpecialDialog::GetDrawAspect

Bestimmt, ob der Benutzer das ausgewählte Element als Symbol anzeigt.

DVASPECT GetDrawAspect() const;

Rückgabewert

Die Methode, die zum Rendern des Objekts erforderlich ist.

  • DVASPECT_CONTENT Zurückgegeben, wenn das Kontrollkästchen "Als Symbol anzeigen" beim Schließen des Dialogfelds nicht aktiviert wurde.

  • DVASPECT_ICON zurückgegeben, wenn das Kontrollkästchen "Als Symbol anzeigen" aktiviert wurde, als das Dialogfeld geschlossen wurde.

Hinweise

Rufen Sie diese Funktion nur auf, nachdem DoModal IDOK zurückgegeben hat.

Weitere Informationen zum Zeichnungsaspekt finden Sie in der FORMATTC-Struktur im Windows SDK.

COlePasteSpecialDialog::GetIconicMetafile

Ruft die Metadatei ab, die dem vom Benutzer ausgewählten Element zugeordnet ist.

HGLOBAL GetIconicMetafile() const;

Rückgabewert

Das Handle für die Metadatei, die den ikonischen Aspekt des ausgewählten Elements enthält, wenn das Kontrollkästchen "Als Symbol anzeigen" aktiviert wurde, als das Dialogfeld durch Auswählen von "OK" geschlossen wurde; andernfalls NULL.

COlePasteSpecialDialog::GetPasteIndex

Ruft den Indexwert ab, der dem Eintrag zugeordnet ist, den der Benutzer ausgewählt hat.

int GetPasteIndex() const;

Rückgabewert

Der Index in das Array von OLEUIPASTEENTRY Strukturen, die vom Benutzer ausgewählt wurden. Das Format, das dem ausgewählten Index entspricht, sollte beim Ausführen des Einfügevorgangs verwendet werden.

Hinweise

Weitere Informationen finden Sie in der OLEUIPASTEENTRY-Struktur im Windows SDK.

COlePasteSpecialDialog::GetSelectionType

Bestimmt den Typ der Auswahl, die der Benutzer vorgenommen hat.

UINT GetSelectionType() const;

Rückgabewert

Gibt den Typ der getroffenen Auswahl zurück.

Hinweise

Die Rückgabetypwerte werden durch den Selection in der COlePasteSpecialDialog Klasse deklarierten Enumerationstyp angegeben.

enum Selection {
    pasteLink,
    pasteNormal,
    pasteOther,
    pasteStatic
    };

Kurze Beschreibungen dieser Werte folgen:

  • COlePasteSpecialDialog::pasteLink Das Optionsfeld "Link einfügen" wurde aktiviert, und das ausgewählte Format war ein standardmäßiges OLE-Format.

  • COlePasteSpecialDialog::pasteNormal Das Optionsfeld "Einfügen" wurde aktiviert, und das ausgewählte Format war ein standardmäßiges OLE-Format.

  • COlePasteSpecialDialog::pasteOther Das ausgewählte Format ist kein standardmäßiges OLE-Format.

  • COlePasteSpecialDialog::pasteStatic Das ausgewählte Format war eine Metadatei.

COlePasteSpecialDialog::m_ps

Struktur des Typs OLEUIPASTESPECIAL, die verwendet wird, um das Verhalten des Dialogfelds "Inhalte einfügen" zu steuern.

OLEUIPASTESPECIAL m_ps;

Hinweise

Elemente dieser Struktur können direkt oder über Memberfunktionen geändert werden.

Weitere Informationen finden Sie in der OLEUIPASTESPECIAL-Struktur im Windows SDK.

Siehe auch

MFC-Beispiel-OCLIENT
COleDialog-Klasse
Hierarchiediagramm
COleDialog-Klasse