Compartilhar via


Estrutura OLEMENUGROUPWIDTHS (oleidl.h)

Indica o número de itens de menu em cada um dos seis grupos de menus de um menu compartilhado entre um contêiner e um servidor de objetos durante uma sessão de edição in-loco. Esse é o mecanismo para criar um menu compartilhado.

Sintaxe

typedef struct tagOleMenuGroupWidths {
  LONG width[6];
} OLEMENUGROUPWIDTHS, *LPOLEMENUGROUPWIDTHS;

Membros

width[6]

Uma matriz cujos elementos contêm o número de itens de menu em cada um dos seis grupos de menus de um menu de edição local compartilhado. Cada grupo de menus pode ter qualquer número de itens de menu. O contêiner usa os elementos 0, 2 e 4 para indicar o número de itens de menu em seus grupos de menus Arquivo, Exibição e Janela . O servidor de objetos usa os elementos 1, 3 e 5 para indicar o número de itens de menu em seus grupos de menus Editar, Objeto e Ajuda .

Comentários

Um aplicativo de contêiner e um servidor de objetos usam essa estrutura para criar um menu compartilhado. O servidor de objetos inicializa para zeros os elementos de matriz em uma estrutura OLEMENUGROUPWIDTHS e passa um ponteiro para ele junto com um identificador de menu para o contêiner em uma chamada para IOleInPlaceFrame::InsertMenus. O contêiner adiciona seus itens de menu ao menu e preenche a estrutura com o número de itens em cada um de seus grupos (índices 0, 2 e 4). Em seguida, o servidor usa os valores de largura do grupo retornados pelo contêiner para inserir seus itens de menu na posição apropriada no menu. O servidor preenche a estrutura com o número de itens em cada um de seus grupos (índices 1, 3 e 5) e, em seguida, passa a estrutura para OLE em uma chamada para a função OleCreateMenuDescriptor . Isso permite que o OLE intercepte as mensagens de menu do contêiner e redirecione as mensagens geradas pelos menus do servidor.

Requisitos

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

Confira também

IOleInPlaceFrame::InsertMenus

OleCreateMenuDescriptor