Partilhar via


Adicionar uma propriedade IDL

O assistente Adicionar Propriedade IDL adiciona uma propriedade a uma interface definida em uma IDL (Biblioteca de Definição de Interface), como em um projeto ATL contendo um arquivo .idl. Este assistente não está disponível em projetos que dão suporte a MFC.

Esse assistente difere do assistente Adicionar Propriedade e do assistente Adicionar Propriedade de MFC de IDL das seguintes maneiras:

  • O assistente Adicionar Propriedade adiciona uma propriedade a uma interface no projeto.
  • O assistente Adicionar Propriedade de MFC de IDL é específico para projetos MFC, ActiveX ou ATL que dão suporte ao MFC.

Para adicionar uma propriedade IDL

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

  2. Em Modo de Exibição de Classe, clique com o botão direito do mouse no nome da interface à qual você deseja adicionar a propriedade.

    Observação

    Adicione também propriedades a dispinterfaces, que estarão aninhadas no nó da biblioteca, a menos que o projeto esteja atribuído.

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

  4. No menu de atalho, selecione Adicionar>Propriedade.

  5. No assistente Adicionar Propriedade de IDL, forneça as informações para criar a propriedade.

  6. Selecione OK para adicionar a propriedade.

Os métodos Get e Put da propriedade são exibidos como dois ícones em Modo de Exibição de Classe na interface em que está definido. Clique duas vezes em qualquer ícone para exibir a declaração de propriedade no arquivo .idl.

Para interfaces ATL, as funções Get e Put são adicionadas aos arquivos .cpp e .h.

Adicionar um assistente de propriedade IDL

A seção a seguir descreve a interface do usuário que será usada para adicionar uma propriedade IDL:

Captura de tela do assistente Adicionar Propriedade IDL com dois parâmetros: [ in ] int i e [ in ] char c. O tipo de retorno é HRESULT. O tipo de propriedade é float.

  • Nome da propriedade

    Define o nome da propriedade.

  • Tipo de propriedade

    O tipo de dados da propriedade.

  • Tipo de retorno

    Para interfaces ATL, define o tipo de retorno para a propriedade. Para interfaces duplas, HRESULT é sempre o tipo de retorno e a opção de seleção não está disponível. Para interfaces personalizadas, selecione um tipo de retorno na lista. HRESULT ainda é recomendado, pois fornece uma maneira padrão de retornar erros.

  • Função Get

    Para interfaces ATL, cria o método Get para recuperar o valor da propriedade. Selecione Get, Put ou ambos.

  • Função Put

    Para interfaces ATL, cria o método Put para definir o valor da propriedade. Selecione Get, Put ou ambos. Se você selecionar a função Put, poderá escolher entre as duas maneiras a seguir de implementar o método:

    Opção Descrição
    propput A função PropPut retorna uma cópia do objeto. propput é o padrão e a maneira mais comum de tornar a propriedade gravável.
    propputref A função PropPutRef retorna uma referência ao objeto, em vez de retornar a cópia do próprio objeto. Considere usar a opção propputref para objetos, como grandes estruturas ou matrizes, que podem ter sobrecarga de inicialização.
  • Parâmetros

    Exibe a lista de parâmetros adicionados à propriedade. Cada item na lista consiste no nome de parâmetro, no tipo de parâmetro e nos atributos.

    in indica que o parâmetro é passado do procedimento de chamada para o procedimento chamado. out indica que o parâmetro de ponteiro é retornado do procedimento chamado para o procedimento de chamada (do servidor para o cliente).

  • +

    Adicione um parâmetro. Em Parâmetros, digite o tipo e o nome do parâmetro. Por exemplo, int x, e selecione OK.

  • x

    Remove o parâmetro selecionado de Parâmetros.

  • Ícone de lápis

    Edite o parâmetro selecionado.

  • Atributos

  1. helpcontext

    Especifica uma ID de contexto que permite ao usuário exibir informações sobre essa propriedade no arquivo de Ajuda. Para obter mais informações, consulte helpcontext.

  2. helpstring

    Especifica uma cadeia de caracteres que é usada para descrever o elemento ao qual ela se aplica. Por padrão, é definido como propertyNome da propriedade. Para obter mais informações, consulte helpstring.

  3. id

    Define o identificador numérico que identifica a propriedade. Essa opção não está disponível para propriedades de interfaces personalizadas. Para obter mais informações, consulte id.

  • Atributos adicionais

Palavras-chave de MIDL (linguagem IDL da Microsoft) são descritas em detalhes na Referência de linguagem MIDL.

Opção Descrição
bindable Indica que a propriedade dá suporte à associação de dados. Para obter mais informações, consulte bindable.
defaultbind Indica que essa única propriedade associável melhor representa o objeto. Para obter mais informações, consulte defaultbind.
defaultcollelem Indica que a propriedade é uma função de acessador para um elemento da coleção padrão. Para obter mais informações, consulte defaultcollelem.
displaybind Indica que essa propriedade deve ser exibida para o usuário como associável. Para obter mais informações, consulte displaybind.
hidden Indica que a propriedade existe, mas que não deveria ser exibida em um navegador orientado ao usuário. Para obter mais informações, consulte hidden.
immediatebind Indica que o banco de dados será notificado imediatamente de todas as alterações nessa propriedade de um objeto associado a dados. Para obter mais informações, consulte immediatebind.
local Especifica para o compilador MIDL que a propriedade não é remota. Para obter mais informações, consulte local.
nonbrowsable Marca um membro de interface ou de dispinterface que não deve ser exibido em um navegador de propriedades. Para obter mais informações, consulte nonbrowsable.
requestedit Indica que a propriedade dá suporte à notificação OnRequestEdit. Para obter mais informações, consulte requestedit.
restricted Especifica que a propriedade não pode ser chamada arbitrariamente. Para obter mais informações, consulte restricted.
source Indica que um membro da propriedade é uma origem de eventos. Para obter mais informações, consulte source.

Consulte também

Adicionar Propriedade
Adicionar Propriedade de MFC de IDL