Compartir a través de


Agregar un método IDL MFC

El asistente para agregar métodos MFC de IDL agrega un método a una interfaz de biblioteca de definiciones de interfaz (IDL) definida en el proyecto de clase de Microsoft Framework (MFC). Si el proyecto contiene una clase asociada a la interfaz, el asistente también agrega el método a la clase.

Para usar este asistente, debe estar en un proyecto de MFC, un proyecto ActiveX o un proyecto ATL que admita MFC. Por ejemplo, si tiene un proyecto de control Microsoft ActiveX, puede usar el procedimiento siguiente para agregar un método a una interfaz IDL en la solución.

Este asistente difiere del Asistente para agregar métodos (que agrega un método a una interfaz IDL) de las siguientes maneras:

  • Es específico de los proyectos MFC, ActiveX o ATL que admiten MFC. En el caso de los proyectos ATL que no admiten MFC, solo está disponible el Asistente para agregar métodos.

  • Agrega las siguientes entradas si se encuentra un mapa de distribución en el proyecto:

    BEGIN_DISPATCH_MAP(CMFCApplication2Doc, CDocument)
        DISP_FUNCTION_ID(CMFCApplication2Doc, "methodName", dispidmethodName, internalName, VT_EMPTY, VTS_NONE)
    END_DISPATCH_MAP()
    
  • Genera la siguiente implementación del método asociado:

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

Agregar un método a una interfaz

  1. En el menú Ver, seleccione Vista de clases.

  2. En la Vista de clases, expanda el nodo del proyecto para mostrar la interfaz a la que quiere agregar el método.

  3. Haga clic con el botón derecho en el nombre de la interfaz.

  4. En el menú contextual, seleccione Agregar y, a continuación, seleccione Agregar método.

  5. En el Asistente para agregar un método MFC de IDL, proporcione la información sobre el método.

  6. Seleccione Aceptar para agregar el método.

Lista de elementos de la interfaz de usuario

En la sección siguiente se describe la interfaz de usuario del Asistente para agregar métodos MFC de IDL:

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

  • Nombre del método

    Establecer el nombre del método. En la tabla siguiente se describen las opciones de nombre del método en función del tipo de interfaz:

    Tipo de interfaz Nombre del método
    Interfaz dual de ATL, interfaz personalizada e interfaz personalizada local Proporcione un nombre de método propio.
    Interfaz dispinterface de MFC Proporcione un nombre de método propio o seleccione un nombre de método sugerido de la lista. Si selecciona un nombre de la lista, aparece el tipo de valor devuelto correcto en Tipo de valor devuelto y no se puede cambiar.
    Interfaz dispinterface de control ActiveX MFC Proporcione su propio nombre de método o seleccione uno de los métodos estándar: DoClick o Actualizar. Para obtener más información sobre los métodos de stock, vea Controles ActiveX de MFC: Agregar métodos estándar.
  • Nombre interno

    Solo está disponible cuando el tipo de método es personalizado. El Nombre interno es el nombre que se usará en la asignación de distribución, el archivo de encabezado (.h) y el archivo de implementación (.cpp). De forma predeterminada, este nombre es el mismo que Nombre del método. Se agrega a la interfaz dispinterface de MFC.

    Si va a agregar el método a un control ActiveX de MFC o MFC dispinterface, puede cambiar el nombre del método como se describe en la tabla siguiente:

    Tipo de interfaz Nombre interno
    Interfaz dual de ATL, interfaz personalizada e interfaz personalizada local No disponible.
    Interfaz dispinterface de MFC De forma predeterminada, se establece en el nombre del método. El nombre interno se puede modificar.
    Interfaz dispinterface de control ActiveX MFC Solo se puede establecer el nombre interno para los métodos personalizados. En los métodos estándar no se usa un nombre interno.
  • Tipo de valor devuelto

    El tipo de datos devuelto por el método. El tipo de valor devuelto estándar para los métodos de interfaz es HRESULT.

    Si la interfaz es una interfaz dual o una interfaz personalizada, solo se permite el tipo de valor devuelto HRESULT.

    Puede establecer el tipo de datos según el tipo de interfaz a la que se agrega el método, como se describe en la tabla siguiente:

    Tipo de interfaz Tipo de valor devuelto
    Interfaz dual HRESULT. No se puede cambiar.
    Interfaz personalizada HRESULT. No se puede cambiar.
    Interfaz personalizada local Proporcione un tipo de valor devuelto propio o seleccione uno de la lista.
    Interfaz dispinterface Proporcione un tipo de valor devuelto propio o seleccione uno de la lista.
    Interfaz dispinterface de control ActiveX MFC Si implementa un método de reserva, el tipo de valor devuelto se establece en el valor adecuado y no se podrá cambiar. Si selecciona un método en la lista Nombre de método y luego selecciona Personalizado en Seleccionar tipo de método, seleccione un tipo de valor devuelto de la lista.
  • Tipo de método

    Solo disponible para controles ActiveX MFC. No disponible si proporcionó un nombre de método en nombre del método en lugar de seleccionar un método de la lista.

    Si selecciona uno de los métodos de la lista Nombre del método, en la lista desplegable Tipo de método, seleccione la implementación estándar o personalizada. La selección del método afecta al tipo de valor devuelto y a la implementación del método que proporciona el asistente, como se describe en la tabla siguiente:

    Tipo de método Descripción
    Estándar El valor predeterminado. Inserta la implementación predeterminada del método que seleccione en la lista Nombre del método. Tipo de valor devuelto no se podrá cambiar si selecciona Estándar.
    Personalizada Proporcione una implementación personalizada para el método seleccionado en Nombre del método . Puede proporcionar su propio tipo de valor devuelto o seleccionar uno en la lista de tipo de valor devuelto.
  • Parámetros

    Muestra los parámetros, modificadores y tipos del método. El asistente actualiza la lista Parámetros a medida que se agregan parámetros.

  • +

    Agregue un parámetro. En Parámetros, escriba el tipo de parámetro, el nombre y los modificadores. Por ejemplo, int x, y seleccione Aceptar.

    Si no proporciona un nombre de parámetro, el asistente omite las selecciones de tipo parámetro; y para los proyectos ATL, también se omiten los atributos de parámetro.

  • x

    Quita el parámetro seleccionado de la lista Parámetros.

  • Icono de lápiz

    Edite el parámetro seleccionado.

  • id

    Establece el id. numérico que identifica el método. Para obtener más información, vea id en la Referencia de MIDL.

  • call_as

    Especifica el nombre del método remoto al que asignar este método local. Para obtener más información, vea call_as en la Referencia de MIDL.

  • helpcontext

    Especifica un id. contextual que permite al usuario ver información sobre este método en el archivo de ayuda. Para obtener más información, vea helpcontext en la Referencia de MIDL.

  • helpstring

    Especifica un texto que describe el elemento asociado. De forma predeterminada, su nombre de método. Para obtener más información, vea helpstring en la Referencia de MIDL.

Consulte también

Asistente para agregar métodos
Asistente para agregar un método IDL
Asistentes y cuadros de diálogo de MFC