Share via


Adicionar um método de IDL da MFC

O assistente Adicionar Método IDL da MFC adiciona um método a uma interface IDL (Biblioteca de Definição de Interface) definida em seu projeto da MFC (Classe do Microsoft Framework). Se o projeto contém uma classe associada à interface, o assistente também adiciona o método à classe.

Para usar esse assistente, você precisa estar em um projeto MFC, projeto ActiveX ou um projeto ATL compatível com MFC. Por exemplo, se você tiver um projeto de controle Microsoft ActiveX, poderá usar o procedimento a seguir para adicionar um método a uma interface IDL na solução.

Esse assistente difere do assistente Adicionar Método (que adiciona um método a uma interface IDL) das seguintes maneiras:

  • É específico para projetos MFC, ActiveX ou ATL que dão suporte à MFC. Para projetos ATL que não dão suporte à MFC, apenas o assistente Adicionar Método está disponível.

  • Ele adicionará as seguintes entradas se um mapa de Expedição for encontrado no projeto:

    BEGIN_DISPATCH_MAP(CMFCApplication2Doc, CDocument)
        DISP_FUNCTION_ID(CMFCApplication2Doc, "methodName", dispidmethodName, internalName, VT_EMPTY, VTS_NONE)
    END_DISPATCH_MAP()
    
  • Ele gera a seguinte implementação de método associado:

    void CMFCApplication2Doc::internalName()
    {
         AFX_MANAGE_STATE(AfxGetAppModuleState());
         // TODO: Add your dispatch handler code here
    }
    

Adicionar um método a uma interface

  1. No menu Exibir, selecione Modo de Exibição de Classe.

  2. Em Modo de Exibição de Classe, expanda o nó do projeto para exibir a interface à qual você deseja adicionar o método.

  3. Clique com o botão direito do mouse no nome da interface.

  4. No menu de atalho, selecione Adicionar e, em seguida, selecione Novo Método.

  5. No assistente Adicionar Método IDL da MFC, forneça informações sobre o método.

  6. Selecione OK para adicionar o método.

Lista de elementos da interface do usuário

A seguinte seção descreve a interface do usuário do assistente Adicionar método IDL da MFC:

Wizard UI. Method name:DoClick, Internal name:DoClick, Return type:void, Method type:custom, Parameters:long l, char C, Attributes id:1.

  • Nome do método

    Defina o nome do método. A seguinte tabela descreve as opções de nome do método, dependendo do tipo de interface:

    Tipo de interface Nome do método
    Interface dupla ATL, interface personalizada e interface personalizada local Forneça seu próprio nome de método.
    Dispinterface MFC Forneça seu próprio nome de método ou selecione um nome de método sugerido na lista. Se você selecionar um nome na lista, o tipo de retorno apropriado será exibido em Tipo de retorno e ele não poderá ser alterado.
    Dispinterface de controle ActiveX do MFC Forneça seu nome para o método ou selecione um destes métodos de estoque: DoClick e Refresh. Para obter mais informações sobre métodos de estoque, confira Controles ActiveX da MFC: adicionar métodos de estoque.
  • Nome interno

    Disponível somente quando o Tipo de método é personalizado. Nome interno é o nome que será usado no mapa de expedição, no arquivo de cabeçalho (.h) e no arquivo de implementação (.cpp). Por padrão, esse nome é o mesmo que o Nome do método. É adicionado à dispinterface da MFC.

    Se você estiver adicionando o método a uma dispinterface de controle MFC ou MFC ActiveX, poderá alterar o nome do método conforme descrito pela seguinte tabela:

    Tipo de interface Nome interno
    Interface dupla ATL, interface personalizada e interface personalizada local Não disponível.
    Dispinterface MFC Definida com o nome do método por padrão. Você pode editar o nome interno.
    Dispinterface de controle ActiveX do MFC Você pode definir o nome interno somente de métodos personalizados. Os métodos de estoque não usam um nome interno.
  • Tipo de retorno

    O tipo de dados retornado pelo método. O tipo de retorno padrão para métodos de interface é HRESULT.

    Se a interface for uma interface dupla ou uma interface personalizada, somente o tipo de retorno HRESULT será permitido.

    Você pode definir o tipo de dados de acordo com o tipo de interface ao qual o método está sendo adicionado, conforme descrito na seguinte tabela:

    Tipo de interface Tipo de retorno
    Interface dupla HRESULT. Inalterável.
    Interface personalizada HRESULT. Inalterável.
    Interface personalizada local Forneça seu próprio tipo de retorno ou selecione um na lista.
    Dispinterface Forneça seu próprio tipo de retorno ou selecione um na lista.
    Dispinterface de controle ActiveX do MFC Se você implementar um método de estoque, o tipo de retorno será definido com o valor apropriado e não poderá ser alterado. Se você selecionar um método na lista Nome do método e selecionar Personalizado em Selecionar tipo de método, selecione um tipo de retorno na lista.
  • Tipo de método

    Disponível somente para controles ActiveX MFC. Não disponível se você fornecer um nome de método em Nome do método, em vez de selecionar um método na lista.

    Se você selecionar um dos métodos na lista Nome do método, na lista suspensa Tipo de método, selecione a implementação Estoque ou Personalizado. A seleção do método afeta o tipo de retorno e a implementação do método que o assistente fornece, conforme descrito na seguinte tabela:

    Tipo de método Descrição
    Stock O padrão. Insere uma implementação padrão do método selecionado na lista Nome do método. Tipo de retorno não poderá ser alterado se você selecionar Estoque.
    Personalizado Você fornece uma implementação personalizada para o método selecionado no Nome do método. É possível fornecer seu próprio tipo de retorno ou selecione um na lista Tipo de retorno.
  • Parâmetros

    Exibe os parâmetros, os modificadores e os tipos do método. O assistente atualiza a lista Parâmetros à medida que você adiciona parâmetros.

  • +

    Adicione um parâmetro. Em Parâmetros, digite o tipo de parâmetro, o nome e os modificadores. Por exemplo, int x, e escolha OK.

    Se você não fornecer um nome de parâmetro, o assistente ignorará as seleções de Tipo de parâmetro, e, para projetos ATL, os atributos de parâmetro também serão ignorados.

  • x

    Remove o parâmetro selecionado da lista Parâmetros.

  • Ícone de lápis

    Edite o parâmetro selecionado.

  • id

    Define a ID numérica que identifica o método. Para obter mais informações, confira id na Referência de MIDL.

  • call_as

    Especifica o nome do método remoto a ser mapeado para esse método local. Para obter mais informações, confira call_as na Referência de MIDL.

  • helpcontext

    Especifica uma ID de contexto que permite ao usuário exibir informações sobre esse método no arquivo de Ajuda. Para obter mais informações, confira helpcontext na Referência de MIDL.

  • helpstring

    Especifica um texto que descreve o elemento associado. Por padrão, seu Nome de método. Para obter mais informações, confira helpstring na Referência de MIDL.

Confira também

Assistente de adição de método
Adicionar um assistente de método de IDL
Assistentes e caixas de diálogo MFC