Estrutura FORMATETC (objidl.h)

Representa um formato de área de transferência generalizado. Ele é aprimorado para abranger um dispositivo de destino, o aspecto ou a exibição dos dados e um indicador médio de armazenamento. Quando se pode esperar encontrar um formato de área de transferência, o OLE usa uma estrutura de dados FORMATETC . Essa estrutura é usada como um parâmetro em funções E métodos OLE que exigem informações de formato de dados.

Sintaxe

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

Membros

cfFormat

O formato de interesse da área de transferência. Há três tipos de formatos reconhecidos pelo OLE:

  • Formatos de intercâmbio padrão, como CF_TEXT.
  • Formatos de aplicativo privado compreendidos apenas pelo aplicativo que oferece o formato ou por outros aplicativos que oferecem recursos semelhantes.
  • Formatos OLE, que são usados para criar objetos vinculados ou inseridos.

ptd

Um ponteiro para uma estrutura DVTARGETDEVICE que contém informações sobre o dispositivo de destino para o qual os dados estão sendo compostos. Um valor NULL é usado sempre que o formato de dados especificado é independente do dispositivo de destino ou quando o chamador não se importa com qual dispositivo é usado. No último caso, se os dados exigirem um dispositivo de destino, o objeto deverá escolher um dispositivo padrão apropriado (geralmente a exibição para componentes visuais). Os dados obtidos de um objeto com um dispositivo de destino NULL , como a maioria dos metarquivos, são independentes do dispositivo de destino. Os dados resultantes geralmente são os mesmos que seriam se o usuário escolhesse o comando Salvar como no menu Arquivo e selecionasse um formato de intercâmbio.

dwAspect

Indica quantos detalhes devem ser contidos na renderização. Esse parâmetro deve ser um dos valores de enumeração DVASPECT . Um único formato de área de transferência pode dar suporte a vários aspectos ou exibições do objeto. A maioria dos métodos de transferência e cache de dados e apresentação passa informações de aspecto. Por exemplo, um chamador pode solicitar a imagem icônica de um objeto, usando o formato da área de transferência de metarquivo para recuperá-la. Observe que apenas um valor DVASPECT pode ser usado em dwAspect. Ou seja, dwAspect não pode ser o resultado de uma operação OR booliana em vários valores DVASPECT .

lindex

Parte do aspecto quando os dados devem ser divididos entre limites de página. O valor mais comum é -1, que identifica todos os dados. Para os aspectos DVASPECT_THUMBNAIL e DVASPECT_ICON, lindex é ignorado.

tymed

Uma das constantes de enumeração TYMED que indicam o tipo de meio de armazenamento usado para transferir os dados do objeto. Os dados podem ser transferidos usando qualquer meio que faça sentido para o objeto . Por exemplo, os dados podem ser passados usando memória global, um arquivo de disco ou objetos de armazenamento estruturados. Para obter mais informações, consulte a enumeração TYMED .

Comentários

A estrutura FORMATETC é usada por métodos nas interfaces de transferência de dados e apresentação como um parâmetro que especifica os dados que estão sendo transferidos. Por exemplo, o método IDataObject::GetData usa a estrutura FORMATETC para indicar exatamente que tipo de dados o chamador está solicitando.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Cabeçalho objidl.h

Confira também

DVASPECT

IDataAdviseHolder

Idataobject

Ienumformatetc

IOleCache

Olecreate

OleCreateFromData

OleCreateLink

OleCreateLinkFromData

OleCreateLinkToFile

OleCreateStaticFromData

STATDATA

STGMEDIUM

TYMED