Menus e recursos: contêiner adições
Este artigo explica as alterações que precisam ser feitas para os menus e outros recursos em um aplicativo de contêiner edição visual.
Em aplicativos de contêiner, dois tipos de alterações precisam ser feitas: modificações em recursos existentes para oferecer suporte a edição visual do OLE e adição de novos recursos usada para ativação in-loco.Se você usar o Assistente de aplicativo para criar seu aplicativo de contêiner, essas etapas serão feitas para você, mas eles podem exigir alguma personalização.
Se você não usar o Assistente de aplicativo, convém examinar OCLIENT.RC, o script de recurso OCLIENT aplicativo de amostra, para ver como essas alterações são implementadas.Consulte o MFC OLE exemplo OCLIENT.
Os tópicos abordados neste artigo incluem:
Adições de Menu do contêiner
Adições de tabela do acelerador
Adições de tabela de seqüência de caracteres
Adições de Menu do contêiner
Você deve adicionar os seguintes itens no menu Editar:
Item |
Objetivo |
---|---|
Inserir novo objeto |
Abre a caixa de diálogo Inserir objeto OLE para inserir um item vinculado ou incorporado no documento. |
Colar vínculo |
Cola um link para o item na área de transferência no documento. |
Verbo OLE |
Chama verbo primário do item selecionado.O texto deste item menu muda para refletir o verbo primário do item selecionado. |
Links |
Abre a caixa de diálogo OLE Editar vínculos para alterar itens vinculados existentes. |
Além de alterações listadas neste artigo, o arquivo de origem deve incluir AFXOLECL.RC, é necessário para a implementação da biblioteca Microsoft Foundation Class.Inserir novo objeto é a inclusão somente menu necessária.Outros itens podem ser adicionados, mas os listados aqui são as mais comuns.
Você deve criar um novo menu para seu aplicativo de contêiner, se você deseja oferecer suporte a ativação in-loco de itens contidos.Esse menu consiste mesmo menu Arquivo e menus pop-up janela usados quando os arquivos são abertos, mas ele tem dois separadores colocados entre eles.Esses separadores são usados para indicar onde o item de servidor (componente) (aplicativo) deve colocar seus menus quando ativado no lugar.Para obter mais informações sobre essa técnica de mesclagem de menus, consulte Menus e recursos: Menu mesclagem.
Adições de tabela do contêiner Application Accelerator
Pequenas alterações em recursos de tabela do acelerador do aplicativo de contêiner são necessárias se você oferece suporte a ativação in-loco.A primeira alteração permite que o usuário pressione a tecla escape (ESC) para cancelar o modo de edição in-loco.Adicione a seguinte entrada à tabela principal accelerator:
ID |
Chave |
Tipo |
---|---|---|
ID_CANCEL_EDIT_CNTR |
VK_ESCAPE |
VIRTKEY |
A segunda alteração é criar uma nova tabela do acelerador que corresponde ao novo recurso de menu criado para ativação in-loco.Esta tabela possui entradas para os menus arquivo e janela além de VK_ESCAPE entrada acima.O exemplo a seguir é a tabela do acelerador criada para ativação in-loco exemplo MFC CONTÊINER:
ID |
Chave |
Tipo |
---|---|---|
ID_FILE_NEW |
CTRL + N |
VIRTKEY |
ID_FILE_OPEN |
CTRL + O |
VIRTKEY |
ID_FILE_SAVE |
CTRL+S |
VIRTKEY |
ID_FILE_PRINT |
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 seqüência para aplicativos de contêiner
A maioria das alterações em tabelas de cadeia de caracteres para aplicativos de contêiner corresponde aos itens de menu adicionais mencionados Contêiner Menu adições.Eles fornecem o texto exibido na barra de status quando cada item de menu é exibido.Por exemplo, aqui estão as entradas de tabela de seqüência de caracteres que o Assistente de aplicativo gera:
ID |
Cadeia de caracteres |
---|---|
IDP_OLE_INIT_FAILED |
Falha na inicialização da OLE.Certifique-se de que as bibliotecas OLE estão na versão correta. |
IDP_FAILED_TO_CREATE |
Falha ao criar objeto.Certifique-se de que o objeto é inserido no registro do sistema. |