Struttura OBJECTDESCRIPTOR (oleidl.h)
Rappresenta la struttura di dati usata per i formati di file CF_OBJECTDESRIPTOR e CF_LINKSRCDESCRIPTOR. Questi formati forniscono informazioni sull'interfaccia utente durante le operazioni di trasferimento dei dati, ad esempio la finestra di dialogo Incolla speciale o le informazioni di feedback di destinazione durante le operazioni di trascinamento.
Sintassi
typedef struct tagOBJECTDESCRIPTOR {
ULONG cbSize;
CLSID clsid;
DWORD dwDrawAspect;
SIZEL sizel;
POINTL pointl;
DWORD dwStatus;
DWORD dwFullUserTypeName;
DWORD dwSrcOfCopy;
} OBJECTDESCRIPTOR, *POBJECTDESCRIPTOR, *LPOBJECTDESCRIPTOR, LINKSRCDESCRIPTOR, *PLINKSRCDESCRIPTOR, *LPLINKSRCDESCRIPTOR;
Members
cbSize
Dimensioni della struttura, in byte.
clsid
CLSID dell'oggetto da trasferire. Il clsid viene usato per ottenere l'icona per l'opzione Visualizza come icona nella finestra di dialogo Incolla speciale ed è applicabile solo se vengono offerti i formati di origine incorporamento o oggetto incorporato. Se non viene offerta alcuna offerta, il valore di clsid deve essere CLSID_NULL. Il clsid può essere recuperato dall'origine caricando l'oggetto e chiamando il metodo IOleObject::GetUserClassID . Si noti che per gli oggetti di collegamento, questo valore non corrisponde al valore restituito dal metodo IPersist::GetClassID .
dwDrawAspect
Aspetto della visualizzazione dell'oggetto. In genere, questo valore è DVASPECT_CONTENT o DVASPECT_ICON. Se l'applicazione di origine non ha disegnato l'oggetto originariamente, il campo dwDrawAspect contiene un valore zero (che non è uguale a DVASPECT_CONTENT). Per altre informazioni, vedere DVASPECT.
sizel
La vera estensione dell'oggetto (senza ritaglio o ridimensionamento) nelle unità HIMETRIC . L'impostazione di questo campo è facoltativa. Il valore può essere (0,0) per le applicazioni che non disegnano l'oggetto trasferito. Questo campo viene usato principalmente dalle destinazioni delle operazioni di trascinamento e rilascio, in modo che possano fornire commenti e suggerimenti appropriati all'utente.
pointl
Offset nelle unità HIMETRIC dall'angolo superiore sinistro dell'oggetto in cui è stata avviata un'operazione di trascinamento. Questo campo è significativo solo per un'operazione di trasferimento trascinamento e rilascio perché corrisponde al punto in cui il mouse è stato fatto clic per avviare l'operazione di trascinamento. Il valore è (0,0) per altre situazioni di trasferimento, ad esempio una copia e incolla degli Appunti.
dwStatus
Copia dei flag di stato per l'oggetto. Questi flag sono definiti dall'enumerazione OLEMISC . Se viene trasferito un oggetto incorporato, vengono restituiti chiamando il metodo IOleObject::GetMiscStatus .
dwFullUserTypeName
Offset per trovare il nome completo del tipo utente dell'oggetto da trasferire. Specifica l'offset, in byte, dall'inizio della struttura di dati OBJECTDESCRIPTOR alla stringa con terminazione null che specifica il nome completo del tipo utente dell'oggetto da trasferire. Il valore è zero se la stringa non è presente. Questa stringa viene usata dalla destinazione di un trasferimento dati per creare etichette nella finestra di dialogo Incolla speciale . L'applicazione di destinazione deve essere in grado di gestire i casi in cui questa stringa viene omessa.
dwSrcOfCopy
Offset, in byte, dall'inizio della struttura di dati alla stringa con terminazione null che specifica l'origine del trasferimento. Il membro dwSrcOfCopy viene in genere implementato come nome visualizzato del moniker temporaneo che identifica l'origine dati. Il valore per dwSrcOfCopy viene visualizzato nella riga di origine della finestra di dialogo Incolla speciale . Un valore zero indica che la stringa non è presente. Se dwSrcOfCopy è zero, la stringa "Origine sconosciuta" viene visualizzata nella finestra di dialogo Incolla speciale .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Intestazione | oleidl.h |