Compartilhar via


Função de retorno de chamada (WRL)

Cria um objeto cuja função membro é um método de retorno de chamada.

Sintaxe

template<
   typename TDelegateInterface,
   typename TCallback
>
ComPtr<TDelegateInterface> Callback(
   TCallback callback
);
template<
   typename TDelegateInterface,
   typename TCallbackObject
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)()
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1)
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1,
   typename TArg2
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1,
   TArg2)
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1,
   typename TArg2,
   typename TArg3
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1,
   TArg2,
   TArg3)
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1,
   typename TArg2,
   typename TArg3,
   typename TArg4
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1,
   TArg2,
   TArg3,
   TArg4)
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1,
   typename TArg2,
   typename TArg3,
   typename TArg4,
   typename TArg5
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1,
   TArg2,
   TArg3,
   TArg4,
   TArg5)
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1,
   typename TArg2,
   typename TArg3,
   typename TArg4,
   typename TArg5,
   typename TArg6
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1,
   TArg2,
   TArg3,
   TArg4,
   TArg5,
   TArg6)
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1,
   typename TArg2,
   typename TArg3,
   typename TArg4,
   typename TArg5,
   typename TArg6,
   typename TArg7
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1,
   TArg2,
   TArg3,
   TArg4,
   TArg5,
   TArg6,
   TArg7)
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1,
   typename TArg2,
   typename TArg3,
   typename TArg4,
   typename TArg5,
   typename TArg6,
   typename TArg7,
   typename TArg8
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1,
   TArg2,
   TArg3,
   TArg4,
   TArg5,
   TArg6,
   TArg7,
   TArg8)
);
template<
   typename TDelegateInterface,
   typename TCallbackObject,
   typename TArg1,
   typename TArg2,
   typename TArg3,
   typename TArg4,
   typename TArg5,
   typename TArg6,
   typename TArg7,
   typename TArg8,
   typename TArg9
>
ComPtr<TDelegateInterface> Callback(
   _In_ TCallbackObject *object,
   _In_ HRESULT (TCallbackObject::* method)(TArg1,
   TArg2,
   TArg3,
   TArg4,
   TArg5,
   TArg6,
   TArg7,
   TArg8,
   TArg9)
);

Parâmetros

TDelegateInterface
Um parâmetro de modelo que especifica a interface do delegado a ser chamado quando ocorre um evento.

TCallback
Um parâmetro de modelo que especifica o tipo de um objeto que representa um objeto e a respectiva função membro de retorno de chamada.

TCallbackObject
Um parâmetro de modelo que especifica o objeto cuja função membro é o método a ser chamado quando ocorre um evento.

TArg1
Um parâmetro de modelo que especifica o tipo do primeiro argumento de método de retorno de chamada.

TArg2
Um parâmetro de modelo que especifica o tipo do segundo argumento de método de retorno de chamada.

TArg3
Um parâmetro de modelo que especifica o tipo do terceiro argumento de método de retorno de chamada.

TArg4
Um parâmetro de modelo que especifica o tipo do quarto argumento de método de retorno de chamada.

TArg5
Um parâmetro de modelo que especifica o tipo do quinto argumento de método de retorno de chamada.

TArg6
Um parâmetro de modelo que especifica o tipo do sexto argumento de método de retorno de chamada.

TArg7
Um parâmetro de modelo que especifica o tipo do sétimo argumento de método de retorno de chamada.

TArg8
Um parâmetro de modelo que especifica o tipo do oitavo argumento de método de retorno de chamada.

TArg9
Um parâmetro de modelo que especifica o tipo do nono argumento de método de retorno de chamada.

callback
Um objeto que representa o objeto de retorno de chamada e a respectiva função membro.

object
O objeto cuja função membro é chamada quando um evento ocorre.

method
A função membro a ser chamada quando um evento ocorre.

Valor de retorno

Um objeto cuja função membro é o método de retorno de chamada especificado.

Comentários

A base de um objeto delegado precisa ser IUnknown, não IInspectable.

Requisitos

Cabeçalho: event.h

Namespace: Microsoft::WRL

Confira também

Namespace Microsoft::WRL