Condividi tramite


Struttura FORMATETC (objidl.h)

Rappresenta un formato generalizzato degli Appunti. È stato migliorato per includere un dispositivo di destinazione, l'aspetto o la visualizzazione dei dati e un indicatore del supporto di archiviazione. Se ci si potrebbe aspettare di trovare un formato degli Appunti, OLE usa invece una struttura di dati FORMATETC . Questa struttura viene utilizzata come parametro nelle funzioni OLE e nei metodi che richiedono informazioni sul formato dei dati.

Sintassi

typedef struct tagFORMATETC {
  CLIPFORMAT     cfFormat;
  DVTARGETDEVICE *ptd;
  DWORD          dwAspect;
  LONG           lindex;
  DWORD          tymed;
} FORMATETC, *LPFORMATETC;

Members

cfFormat

Formato degli Appunti di interesse. Esistono tre tipi di formati riconosciuti da OLE:

  • Formati di interscambio standard, ad esempio CF_TEXT.
  • I formati dell'applicazione privata sono compresi solo dall'applicazione che offre il formato o da altre applicazioni che offrono funzionalità simili.
  • Formati OLE, utilizzati per creare oggetti collegati o incorporati.

ptd

Puntatore a una struttura DVTARGETDEVICE contenente informazioni sul dispositivo di destinazione per cui vengono composti i dati. Un valore NULL viene usato ogni volta che il formato di dati specificato è indipendente dal dispositivo di destinazione o quando il chiamante non importa quale dispositivo viene usato. Nel secondo caso, se i dati richiedono un dispositivo di destinazione, l'oggetto deve selezionare un dispositivo predefinito appropriato (spesso la visualizzazione per i componenti visivi). I dati ottenuti da un oggetto con un dispositivo di destinazione NULL , ad esempio la maggior parte dei metafile, sono indipendenti dal dispositivo di destinazione. I dati risultanti sono in genere uguali a se l'utente ha scelto il comando Salva con nome dal menu File e ha selezionato un formato di interscambio.

dwAspect

Indica la quantità di dettaglio che deve essere contenuta nel rendering. Questo parametro deve essere uno dei valori di enumerazione DVASPECT . Un singolo formato degli Appunti può supportare più aspetti o visualizzazioni dell'oggetto. La maggior parte dei dati e dei metodi di trasferimento e memorizzazione nella cache passa informazioni sugli aspetti. Ad esempio, un chiamante potrebbe richiedere l'immagine iconica di un oggetto, usando il formato degli Appunti metafile per recuperarlo. Si noti che in dwAspect è possibile usare un solo valore DVASPECT. Ovvero , dwAspect non può essere il risultato di un'operazione OR booleana su diversi valori DVASPECT .

lindex

Parte dell'aspetto quando i dati devono essere suddivisi tra i limiti della pagina. Il valore più comune è -1, che identifica tutti i dati. L'indice in base zero deve essere usato per CFSTR_FILECONTENTS formato. Per gli aspetti DVASPECT_THUMBNAIL e DVASPECT_ICON, lindex viene ignorato.

tymed

Una delle costanti di enumerazione TYMED che indicano il tipo di supporto di archiviazione utilizzato per trasferire i dati dell'oggetto. I dati possono essere trasferiti usando qualsiasi supporto appropriato per l'oggetto. Ad esempio, i dati possono essere passati usando la memoria globale, un file su disco o oggetti di archiviazione strutturati. Per altre informazioni, vedere l'enumerazione TYMED .

Osservazioni:

La struttura FORMATETC viene utilizzata dai metodi nelle interfacce di trasferimento e presentazione dei dati come parametro che specifica i dati trasferiti. Ad esempio, il metodo IDataObject::GetData usa la struttura FORMATETC per indicare esattamente il tipo di dati richiesto dal chiamante.

Requisiti

Requisito Value
Client minimo supportato Windows 2000 Professional [app desktop | App UWP]
Server minimo supportato Windows 2000 Server [app desktop | App UWP]
Header objidl.h

Vedere anche

DVASPECT

IDataAdviseHolder

IDataObject

IEnumFORMATETC

IOleCache

OleCreate

OleCreateFromData

OleCreateLink

OleCreateLinkFromData

OleCreateLinkToFile

OleCreateStaticFromData

STATDATA

STGMEDIUM

TYMED