OLEUIPASTESPECIALA-Struktur (oledlg.h)
Enthält Informationen, die die OLE-Benutzeroberflächenbibliothek zum Initialisieren des Dialogfelds Spezial einfügen verwendet, sowie Platz für die Bibliothek, um Informationen zurückzugeben, 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;
Member
cbStruct
Die Größe der Struktur in Bytes. Dieses Element muss bei der Eingabe ausgefüllt werden.
dwFlags
Bei der Eingabe gibt dwFlags die Initialisierungs- und Erstellungsflags an. Beim Beenden werden die Optionen des Benutzers angegeben. Dies kann eine Kombination der folgenden Flags sein.
Wert | Bedeutung |
---|---|
|
Im Dialogfeld wird eine Hilfeschaltfläche angezeigt. |
|
Das Optionsfeld Einfügen wird beim Start des Dialogfelds ausgewählt. Dies ist der Standardwert, wenn PSF_SELECTPASTE oder PSF_SELECTPASTELINK nicht angegeben werden. Außerdem wird der Status der Schaltfläche bei der Beendigung des Dialogfelds angegeben. IN/OUT-Flag. |
|
Das Optionsfeld PasteLink wird beim Start des Dialogfelds ausgewählt. Gibt außerdem den Status der Schaltfläche bei der Dialogbeendigung an. IN/OUT-Flag. |
|
Gibt an, ob das Optionsfeld Anzeige als Symbol bei der Beendigung des Dialogfelds aktiviert wurde. OUT-Flag. |
|
Das Kontrollkästchen Als Symbol anzeigen wird bei der Initialisierung deaktiviert. |
|
Wird verwendet, um die Änderungssymbolschaltfläche im Dialogfeld zu deaktivieren, die standardmäßig für Benutzer verfügbar ist, wenn sie ein OLE-Objekt einfügen. Weitere Informationen finden Sie unter STAYONCLIPBOARDCHANGE . |
|
Wird verwendet, um das Dialogfeld anzuhalten, 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 sich in der Mitte der Präsentation für den Benutzer befinden, nicht mehr auf dem neuesten Stand sind, was sich tatsächlich in der Zwischenablage befindet. |
|
Wird in Verbindung mit STAYONCLIPBOARDCHANGE verwendet (es wird nichts anderes ausgeführt). Wenn sich die Zwischenablage ändert, während das Dialogfeld geöffnet ist und STAYONCLIPBOARDCHANGE angegeben ist, gibt NOREFRESHDATAOBJECT an, dass das Dialogfeld den Inhalt des Dialogfelds NICHT aktualisieren soll, um den neuen Inhalt der Zwischenablage widerzuspiegeln. Dies ist nützlich, wenn die Anwendung das Dialogfeld Paste-Special für ein IDataObject neben dem Dialogfeld in der Zwischenablage verwendet, z. B. im Rahmen eines Drag-and-Drop-Vorgangs mit der rechten Maustaste. |
hWndOwner
Das Fenster, das das Dialogfeld besitzt. Dieser Member sollte nicht NULL sein.
lpszCaption
Zeiger auf eine Zeichenfolge, die als Titel des Dialogfelds verwendet werden soll. Wenn NULL, verwendet die Bibliothek Spezial einfügen.
lpfnHook
Zeiger auf eine Hookfunktion, die nachrichten verarbeitet, die für das Dialogfeld vorgesehen sind. Die Hookfunktion muss null zurückgeben, um eine Nachricht, die sie nicht verarbeitet hat, an die Dialogfeldprozedur in der Bibliothek zurückzugeben. Die Hookfunktion muss einen Wert ohne Zero zurückgeben, um zu verhindern, dass die Dialogfeldprozedur der Bibliothek eine bereits verarbeitete Nachricht verarbeitet.
lCustData
Anwendungsdefinierte Daten, die die Bibliothek an die Hookfunktion übergibt, auf die das lpfnHook-Element verweist. Die Bibliothek übergibt einen Zeiger auf 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-Element angegeben wird.
lpszTemplate
Zeiger auf eine null-beendete Zeichenfolge, die den Namen der Ressourcendatei für die Dialogfeldvorlage angibt, die durch die Vorlage " Spezielle Einfügen" der Bibliothek ersetzt werden soll.
hResource
Angepasstes Vorlagenhandle.
lpSrcDataObj
Zeiger auf die IDataObject-Schnittstelle des zu einfügenden Datenobjekts (aus der Zwischenablage). Dieser Member wird bei der Eingabe ausgefüllt. Wenn lpSrcDataObjnull ist, wenn OleUIPasteSpecial aufgerufen wird, versucht OleUIPasteSpecial , einen Zeiger auf ein IDataObject aus der Zwischenablage abzurufen. Wenn OleUIPasteSpecial erfolgreich ist, liegt es in der Verantwortung des Aufrufers, das in lpSrcDataObj zurückgegebene IDataObject freizugeben.
arrPasteEntries
Das OLEUIPASTEENTRY-Array , das akzeptable Formate angibt. Dieser Member wird bei der Eingabe ausgefüllt.
cPasteEntries
Anzahl der OLEUIPASTEENTRY-Arrayeinträge . Dieser Member wird bei der Eingabe ausgefüllt.
arrLinkTypes
Liste der zulässigen Linktypen. Linktypen werden mithilfe von OLEUIPASTEFLAG in arrPasteEntries verwendet. Dieser Member wird bei der Eingabe ausgefüllt.
cLinkTypes
Anzahl der Linktypen. Dieser Member wird bei der Eingabe ausgefüllt.
cClsidExclude
Anzahl der CLSIDs in lpClsidExclude. Dieser Member wird bei der Eingabe ausgefüllt.
lpClsidExclude
Zeiger auf ein Array von CLSIDs, um aus der Liste der verfügbaren Serverobjekte für einen Paste-Vorgang auszuschließen. Beachten Sie, dass sich dies nicht auf Link einfügen auswirkt. Eine Anwendung kann die Einbettung in sich selbst verhindern, indem sie eine eigene CLSID in dieser Liste auflistet. Dieses Feld wird bei der Eingabe ausgefüllt.
nSelectedIndex
Index der arrPasteEntries , die der Benutzer ausgewählt hat. Dieses Element wird bei der Ausgabe ausgefüllt.
fLink
Gibt an, ob der Benutzer " Link einfügen" oder " Link einfügen" ausgewählt hat. Dieses Element wird bei der Ausgabe ausgefüllt.
hMetaPict
Behandeln Sie die Metadatei, die das vom Benutzer ausgewählte Symbol und den Symboltitel enthält. Dieses Element wird bei der Ausgabe ausgefüllt.
sizel
Die Größe des Objekts, wie in seiner Quelle angezeigt, wenn der vom Benutzer ausgewählte Anzeigeaspekt mit dem in der Quelle angezeigten Aspekt übereinstimmt. Wenn der Benutzer einen anderen Aspekt wählt, werden sizel.cx und sizel.cy auf 0 festgelegt. Die Größe des Objekts, wie es in der Quelle angezeigt wird, wird vom ObjectDescriptor abgerufen, wenn fLinkFALSE ist, und vom LinkSrcDescriptor, wenn fLinkTRUE ist. Dieses Element wird bei der Ausgabe ausgefüllt.
Hinweise
Hinweis
Der oledlg.h-Header definiert OLEUIPASTESPECIAL als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code 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 |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Kopfzeile | oledlg.h |