Struttura OLEUIPASTESPECIALW (oledlg.h)
Contiene informazioni utilizzate dalla libreria dell'interfaccia utente OLE per inizializzare la finestra di dialogo Incolla speciale , nonché lo spazio per la libreria per restituire informazioni quando la finestra di dialogo viene chiusa.
Sintassi
typedef struct tagOLEUIPASTESPECIALW {
DWORD cbStruct;
DWORD dwFlags;
HWND hWndOwner;
LPCWSTR lpszCaption;
LPFNOLEUIHOOK lpfnHook;
LPARAM lCustData;
HINSTANCE hInstance;
LPCWSTR lpszTemplate;
HRSRC hResource;
LPDATAOBJECT lpSrcDataObj;
LPOLEUIPASTEENTRYW arrPasteEntries;
int cPasteEntries;
UINT *arrLinkTypes;
int cLinkTypes;
UINT cClsidExclude;
LPCLSID lpClsidExclude;
int nSelectedIndex;
BOOL fLink;
HGLOBAL hMetaPict;
SIZEL sizel;
} OLEUIPASTESPECIALW, *POLEUIPASTESPECIALW, *LPOLEUIPASTESPECIALW;
Members
cbStruct
Dimensioni della struttura, in byte. Questo membro deve essere compilato all'input.
dwFlags
In input , dwFlags specifica i flag di inizializzazione e creazione. All'uscita, specifica le scelte dell'utente. Può trattarsi di una combinazione dei flag seguenti.
Valore | Significato |
---|---|
|
Nella finestra di dialogo verrà visualizzato un pulsante ? |
|
Il pulsante di opzione Incolla verrà selezionato all'avvio della finestra di dialogo. Si tratta dell'impostazione predefinita, se non viene specificato PSF_SELECTPASTE o PSF_SELECTPASTELINK. Specifica inoltre lo stato del pulsante alla terminazione della finestra di dialogo. Flag IN/OUT. |
|
Il pulsante di opzione PasteLink verrà selezionato all'avvio della finestra di dialogo. Specifica inoltre lo stato del pulsante alla terminazione della finestra di dialogo. Flag IN/OUT. |
|
Indica se il pulsante di opzione Visualizza come icona è stato selezionato nella terminazione della finestra di dialogo. Flag OUT. |
|
La casella di controllo Visualizza come icona verrà disabilitata all'inizializzazione. |
|
Utilizzato per disabilitare il pulsante di modifica icona nella finestra di dialogo, disponibile per gli utenti quando incollano un oggetto OLE per impostazione predefinita. Vedere STAYONCLIPBOARDCHANGE in caso contrario. |
|
Consente di indicare alla finestra di dialogo di rimanere aggiornati se gli Appunti cambiano mentre è in esecuzione la finestra di dialogo. Se l'utente passa a un'altra applicazione e copia o taglia qualcosa, la finestra di dialogo eseguirà, per impostazione predefinita, un'operazione di annullamento, che rimuoverà la finestra di dialogo perché le opzioni al centro della presentazione all'utente non sono più aggiornate rispetto a ciò che è realmente negli Appunti. |
|
Usato in combinazione con STAYONCLIPBOARDCHANGE (non esegue alcuna operazione diversamente). Se gli Appunti cambiano mentre la finestra di dialogo è inattiva e viene specificato STAYONCLIPBOARDCHANGE , NOREFRESHDATAOBJECT indica che la finestra di dialogo non deve aggiornare il contenuto della finestra di dialogo per riflettere il nuovo contenuto degli Appunti. Ciò è utile se l'applicazione usa la finestra di dialogo speciale incolla su un oggetto IDataObject oltre a quello negli Appunti, ad esempio, come parte di un'operazione di trascinamento della selezione rapida. |
hWndOwner
Finestra proprietaria della finestra di dialogo. Questo membro non deve essere NULL.
lpszCaption
Puntatore a una stringa da utilizzare come titolo della finestra di dialogo. Se NULL, la libreria usa Incolla speciale.
lpfnHook
Puntatore a una funzione hook che elabora i messaggi destinati alla finestra di dialogo. La funzione hook deve restituire zero per passare un messaggio che non è stato elaborato nuovamente alla routine della finestra di dialogo nella libreria. La funzione hook deve restituire un valore diverso da zero per impedire alla routine della finestra di dialogo della libreria di elaborare un messaggio già elaborato.
lCustData
Dati definiti dall'applicazione che la libreria passa alla funzione hook a cui punta il membro lpfnHook . La libreria passa un puntatore alla struttura OLEUIPASTESPECIAL nel parametro lParam del messaggio WM_INITDIALOG; questo puntatore può essere usato per recuperare il membro lCustData .
hInstance
Istanza che contiene un modello di finestra di dialogo specificato dal membro lpTemplateName .
lpszTemplate
Puntatore a una stringa con terminazione Null che specifica il nome del file di risorse per il modello di finestra di dialogo da sostituire con il modello di finestra di dialogo Incolla speciale della libreria.
hResource
Handle del modello personalizzato.
lpSrcDataObj
Puntatore all'interfaccia IDataObject dell'oggetto dati da incollare (dagli Appunti). Questo membro viene compilato all'input. Se lpSrcDataObj è NULL quando viene chiamato OleUIPasteSpecial , OleUIPasteSpecial tenterà di recuperare un puntatore a un IDataObject dagli Appunti. Se OleUIPasteSpecial riesce, è responsabilità del chiamante liberare l'IDataObject restituito in lpSrcDataObj.
arrPasteEntries
Matrice OLEUIPASTEENTRY che specifica formati accettabili. Questo membro viene compilato all'input.
cPasteEntries
Numero di voci della matrice OLEUIPASTEENTRY . Questo membro viene compilato all'input.
arrLinkTypes
Elenco di tipi di collegamento accettabili. I tipi di collegamento vengono indicati usando OLEUIPASTEFLAG in arrPasteEntries. Questo membro viene compilato all'input.
cLinkTypes
Numero di tipi di collegamento. Questo membro viene compilato all'input.
cClsidExclude
Numero di CLSID in lpClsidExclude. Questo membro viene compilato all'input.
lpClsidExclude
Puntatore a una matrice di CLSID da escludere dall'elenco di oggetti server disponibili per un'operazione Incolla. Si noti che questa operazione non influisce sul collegamento incolla. Un'applicazione può impedire l'incorporamento in se stessa elencando il proprio CLSID in questo elenco. Questo campo viene compilato all'input.
nSelectedIndex
Indice di arrPasteEntries selezionato dall'utente. Questo membro viene compilato nell'output.
fLink
Indica se l'opzione Incolla o Incolla collegamento è stata selezionata dall'utente. Questo membro viene compilato nell'output.
hMetaPict
Gestire il metafile contenente l'icona e il titolo dell'icona selezionati dall'utente. Questo membro viene compilato nell'output.
sizel
Dimensione dell'oggetto visualizzato nell'origine, se l'aspetto di visualizzazione scelto dall'utente corrisponde all'aspetto visualizzato nell'origine. Se l'utente sceglie un aspetto diverso, sizel.cx e sizel.cy sono entrambi impostati su zero. La dimensione dell'oggetto visualizzato nell'origine viene recuperata dal ObjectDescriptor se fLink è FALSE e dal LinkSrcDescriptor se fLink è TRUE. Questo membro viene compilato nell'output.
Commenti
Nota
L'intestazione oledlg.h definisce OLEUIPASTESPECIAL come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | oledlg.h |