Freigeben über


OLEUIPASTESPECIALA-Struktur (oledlg.h)

Enthält Informationen, die von der OLE-Benutzeroberflächenbibliothek zum Initialisieren des Dialogfelds "Inhalte einfügen" sowie zum Zurückgeben von Informationen für die Bibliothek verwendet werden, wenn das Dialogfeld geschlossen wird.

Syntax

typedef struct tagOLEUIPASTESPECIALA {
  DWORD              cbStruct;
  DWORD              dwFlags;
  HWND               hWndOwner;
  LPCSTR             lpszCaption;
  LPFNOLEUIHOOK      lpfnHook;
  LPARAM             lCustData;
  HINSTANCE          hInstance;
  LPCSTR             lpszTemplate;
  HRSRC              hResource;
  LPDATAOBJECT       lpSrcDataObj;
  LPOLEUIPASTEENTRYA arrPasteEntries;
  int                cPasteEntries;
  UINT               *arrLinkTypes;
  int                cLinkTypes;
  UINT               cClsidExclude;
  LPCLSID            lpClsidExclude;
  int                nSelectedIndex;
  BOOL               fLink;
  HGLOBAL            hMetaPict;
  SIZEL              sizel;
} OLEUIPASTESPECIALA, *POLEUIPASTESPECIALA, *LPOLEUIPASTESPECIALA;

Angehörige

cbStruct

Die Größe der Struktur in Byte. Dieses Element muss auf Eingaben ausgefüllt werden.

dwFlags

Bei eingaben gibt dwFlags die Initialisierungs- und Erstellungsflags an. Beim Beenden gibt es die Auswahlmöglichkeiten des Benutzers an. Es kann eine Kombination der folgenden Flags sein.

Wert Bedeutung
PSF_SHOWHELP
Im Dialogfeld wird eine Schaltfläche Hilfe- angezeigt.
PSF_SELECTPASTE
Das Optionsfeld " einfügen" wird beim Start des Dialogfelds ausgewählt. Dies ist die Standardeinstellung, wenn PSF_SELECTPASTE oder PSF_SELECTPASTELINK nicht angegeben sind. Außerdem wird der Status der Schaltfläche beim Beenden des Dialogfelds angegeben. IN/OUT-Kennzeichnung.
PSF_SELECTPASTELINK
Das Optionsfeld PasteLink wird beim Start des Dialogfelds ausgewählt. Gibt außerdem den Status der Schaltfläche beim Beenden des Dialogfelds an. IN/OUT-Kennzeichnung.
PSF_CHECKDISPLAYASICON
Gibt an, ob das Optionsfeld Als Symbol anzeigen Optionsfeld beim Beenden des Dialogfelds aktiviert wurde. OUT-Kennzeichnung.
PSF_DISABLEDISPLAYASICON
Das Kontrollkästchen "Als Symbol anzeigen" wird bei der Initialisierung deaktiviert.
HIDECHANGEICON-
Wird verwendet, um die Schaltfläche "Änderungssymbol" im Dialogfeld zu deaktivieren, die Benutzern beim Einfügen eines OLE-Objekts standardmäßig zur Verfügung steht. Andernfalls STAYONCLIPBOARDCHANGE.
STAYONCLIPBOARDCHANGE
Wird verwendet, um dem Dialogfeld mitzuteilen, dass er auf dem Laufenden bleibt, wenn sich die Zwischenablage ändert, während das Dialogfeld geöffnet ist. Wenn der Benutzer zu einer anderen Anwendung wechselt und etwas kopiert oder ausschneidet, führt das Dialogfeld standardmäßig einen Abbruchvorgang aus, wodurch das Dialogfeld entfernt wird, da die Optionen, die er sich in der Mitte der Präsentation für den Benutzer befindet, nicht mehr up-to-Datum in Bezug auf das, was sich wirklich in der Zwischenablage befindet.
NOREFRESHDATAOBJECT-
Wird in Verbindung mit STAYONCLIPBOARDCHANGE verwendet (andernfalls nichts). Wenn sich die Zwischenablage ändert, während das Dialogfeld geöffnet ist und STAYONCLIPBOARDCHANGE angegeben wird, gibt NOREFRESHDATAOBJECT an, dass der Inhalt des Dialogfelds NICHT aktualisiert werden soll, um den neuen Inhalt der Zwischenablage widerzuspiegeln. Dies ist nützlich, wenn die Anwendung das Dialogfeld "Einfügen"-Sonderzeichen in einem IDataObject neben dem in der Zwischenablage verwendeten Dialogfeld verwendet, z. B. als Teil eines Drag-and-Drop-Vorgangs mit der rechten Maustaste.

hWndOwner

Das Fenster, das das Dialogfeld besitzt. Dieses Element sollte nicht NULL-sein.

lpszCaption

Zeigen Sie auf eine Zeichenfolge, die als Titel des Dialogfelds verwendet werden soll. Wenn NULL-, verwendet die Bibliothek Inhalte einfügen.

lpfnHook

Zeiger auf eine Hook-Funktion, die Nachrichten verarbeitet, die für das Dialogfeld vorgesehen sind. Die Hook-Funktion muss null zurückgeben, um eine Meldung zu übergeben, dass sie nicht wieder an die Dialogfeldprozedur in der Bibliothek verarbeitet wurde. Die Hook-Funktion muss einen Wert ungleich Null zurückgeben, um zu verhindern, dass die Dialogfeldprozedur der Bibliothek eine bereits verarbeitete Nachricht verarbeitet.

lCustData

Anwendungsdefinierte Daten, auf die die Bibliothek an die Hook-Funktion übergibt, auf die vom lpfnHook Member verwiesen wird. Die Bibliothek übergibt einen Zeiger an die OLEUIPASTESPECIAL- Struktur im lParam Parameter der WM_INITDIALOG Nachricht; Dieser Zeiger kann verwendet werden, um das lCustData--Element abzurufen.

hInstance

Instanz, die eine Dialogfeldvorlage enthält, die vom lpTemplateName Member angegeben wird.

lpszTemplate

Zeigen Sie auf eine mit Null beendete Zeichenfolge, die den Namen der Ressourcendatei für die Dialogfeldvorlage angibt, die durch die Vorlage für das Dialogfeld "Inhalte einfügen" der Bibliothek ersetzt werden soll.

hResource

Angepasster Vorlagenhandle.

lpSrcDataObj

Zeiger auf die IDataObject- Schnittstelle des zu einfügenden Datenobjekts (aus der Zwischenablage). Dieses Element wird auf Eingaben gefüllt. Wenn lpSrcDataObjNULL- ist, wenn OleUIPasteSpecial- aufgerufen wird, versucht OleUIPasteSpecial-, einen Zeiger auf einen IDataObject- aus der Zwischenablage abzurufen. Wenn OleUIPasteSpecial erfolgreich ist, liegt es in der Verantwortung des Aufrufers, das IDataObject freizugeben, das in lpSrcDataObjzurückgegeben wird.

arrPasteEntries

Das OLEUIPASTEENTRY Arrays, das akzeptable Formate angibt. Dieses Element wird auf Eingaben gefüllt.

cPasteEntries

Anzahl der OLEUIPASTEENTRY Arrayeinträgen. Dieses Element wird auf Eingaben gefüllt.

arrLinkTypes

Liste der Verknüpfungstypen, die akzeptabel sind. Verknüpfungstypen werden mithilfe OLEUIPASTEFLAG- in arrPasteEntriesverwendet. Dieses Element wird auf Eingaben gefüllt.

cLinkTypes

Anzahl der Verknüpfungstypen. Dieses Element wird auf Eingaben gefüllt.

cClsidExclude

Anzahl der CLSIDs in lpClsidExclude. Dieses Element wird auf Eingaben gefüllt.

lpClsidExclude

Zeigen Sie auf ein Array von CLSIDs, die aus der Liste der verfügbaren Serverobjekte für einen Einfügevorgang ausgeschlossen werden sollen. Beachten Sie, dass sich dies nicht auf Link einfügenauswirkt. Eine Anwendung kann das Einbetten in sich verhindern, indem sie ihre eigene CLSID in dieser Liste auflisten. Dieses Feld wird für die Eingabe ausgefüllt.

nSelectedIndex

Index der arrPasteEntries, die der Benutzer ausgewählt hat. Dieses Element wird auf der Ausgabe ausgefüllt.

fLink

Ob Link einfügen oder Link einfügen vom Benutzer ausgewählt wurde. Dieses Element wird auf der Ausgabe ausgefüllt.

hMetaPict

Handle to the Metafile containing the icon and icon title selected by the user. Dieses Element wird auf der Ausgabe ausgefüllt.

sizel

Die Größe des Objekts, wie in der Quelle angezeigt, wenn der vom Benutzer ausgewählte Anzeigeaspekt mit dem in der Quelle angezeigten Aspekt übereinstimmt. Wenn der Benutzer einen anderen Aspekt auswäht, werden sizel.cx und sizel.cy beide auf Null festgelegt. Die Größe des Objekts, wie es in der Quelle angezeigt wird, wird aus dem ObjectDescriptor abgerufen, wenn fLink-FALSE- und aus dem LinkSrcDescriptor ist, wenn fLink-TRUEist. Dieses Element wird auf der Ausgabe ausgefüllt.

Bemerkungen

Anmerkung

Der oledlg.h-Header definiert OLEUIPASTESPECIAL als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Header- oledlg.h

Siehe auch

OLEUIPASTEENTRY

OLEUIPASTEFLAG-

OleUIPasteSpecial-