Partilhar via


Menus e recursos: adições de contêiner

Este artigo explica as alterações que precisam ser feitas nos menus e outros recursos em um aplicativo de contêiner de edição visual.

Em aplicações de contêiner, dois tipos de alterações precisam ser feitas: modificações nos recursos existentes para suportar a edição visual OLE e adição de novos recursos usados para ativação no local. Se você usar o assistente de aplicativo para criar seu aplicativo de contêiner, essas etapas serão feitas para você, mas podem exigir alguma personalização.

Se você não usar o assistente de aplicativo, você pode querer olhar para OCLIENT. RC, o script de recurso para o aplicativo de exemplo OCLIENT, para ver como essas alterações são implementadas. Consulte o exemplo OLE MFC OCLIENT.

Os tópicos abordados neste artigo incluem:

Adições ao menu de contêiner

Você deve adicionar os seguintes itens ao menu Editar:

Iteme Propósito
Inserir novo objeto Abre a caixa de diálogo Inserir objeto OLE para inserir um item vinculado ou incorporado no documento.
Colar o link Cola um link para o item na Área de Transferência no documento.
Verbo OLE Chama o verbo primário do item selecionado. O texto deste item de menu muda para refletir o verbo primário do item selecionado.
Ligações Abre a caixa de diálogo OLE Edit Links para alterar itens vinculados existentes.

Além das alterações listadas neste artigo, seu arquivo de origem deve incluir AFXOLECL. RC, que é necessário para a implementação da Microsoft Foundation Class Library. Inserir Novo Objeto é a única adição de menu necessária. Outros itens podem ser adicionados, mas os listados aqui são os mais comuns.

Você deve criar um novo menu para a sua aplicação de recipiente se quiser oferecer suporte à ativação local de itens contidos. Este menu consiste no mesmo menu Ficheiro e nos menus pop-up de Janela usados quando os ficheiros estão abertos, mas possui dois separadores entre eles. Esses separadores são usados para indicar onde o servidor deve colocar os seus menus do item (componente/aplicativo) quando ativado no local. Para obter mais informações sobre essa técnica de mesclagem de menus, consulte Menus e recursos: mesclagem de menus.

Adições à tabela do Container Application Accelerator

Pequenas alterações nos recursos da tabela de atalhos de um aplicativo contêiner são necessárias se você estiver oferecendo suporte à ativação no local. A primeira alteração permite que o utilizador pressione a tecla escape (ESC) para cancelar o modo de edição no local. Adicione a seguinte entrada à tabela principal do acelerador:

Nº de Identificação Chave Tipo
ID_CANCEL_EDIT_CNTR VK_ESCAPE VIRTKEY

A segunda alteração é criar uma nova tabela de acelerador que corresponda ao novo recurso de menu criado para ativação no local. Esta tabela tem entradas para os menus Arquivo e Janela, além da entrada VK_ESCAPE acima. O exemplo a seguir é a tabela de aceleradores criada para ativação in-loco no exemplo do MFC CONTAINER:

Nº de Identificação Chave Tipo
ID_ARQUIVO_NOVO CTRL+N VIRTKEY
ID_ABRIR_ARQUIVO CTRL+O VIRTKEY
ID_ARQUIVO_SALVAR CTRL+S VIRTKEY
ID_ARQUIVO_IMPRESSÃO CTRL+P VIRTKEY
ID_NEXT_PANE VK_F6 VIRTKEY
ID_PREV_PANE SHIFT+VK_F6 VIRTKEY
ID_CANCEL_EDIT_CNTR VK_ESCAPE VIRTKEY

Adições de tabela de cadeia de caracteres para aplicativos de contêiner

A maioria das alterações nas tabelas de cadeia de caracteres para aplicativos de contêiner corresponde aos itens de menu adicionais mencionados em Adições de menu de contêiner. Eles fornecem o texto exibido na barra de status quando cada item de menu é exibido. Como exemplo, aqui estão as entradas da tabela de cadeia de caracteres que o assistente de aplicativo gera:

Nº de Identificação Cordão
IDP_OLE_INIT_FAILED Falha na inicialização do OLE. Certifique-se de que as bibliotecas OLE são a versão correta.
ERRO_IDP_FALHA_AO_CRIAR Falha ao criar objeto. Certifique-se de que o objeto é inserido no registro do sistema.

Ver também

Menus e Recursos (OLE)
Menus e recursos: adições de servidor