Método CBasePropertyPage.OnReceiveMessage
[O recurso associado a esta página, DirectShow, é um recurso herdado. Foi substituído por MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation. Esses recursos foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use MediaPlayer, IMFMediaEngine e Audio/Video Capture in Media Foundation em vez de DirectShow, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]
O OnReceiveMessage
método é chamado quando a caixa de diálogo recebe uma mensagem.
Sintaxe
virtual INT_PTR OnReceiveMessage(
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
);
Parâmetros
-
hwnd
-
Identificador da janela.
-
uMsg
-
Message.
-
wParam
-
Primeiro parâmetro de mensagem.
-
lParam
-
Segundo parâmetro de mensagem.
Retornar valor
Retorna um valor booliano. O procedimento de caixa de diálogo retorna esse valor; para obter mais informações, consulte a documentação do SDK da plataforma.
Comentários
A implementação da classe base chama DefWindowProc. Substitua esse método para manipular mensagens relacionadas aos controles de caixa de diálogo. Se o método de substituição não manipular uma mensagem específica, ele deverá chamar o método de classe base.
Se o usuário alterar as propriedades por meio dos controles de caixa de diálogo, defina o sinalizador CBasePropertyPage::m_bDirty como TRUE. Em seguida, chame o método IPropertyPageSite::OnStatusChange no ponteiro CBasePropertyPage::m_pPageSite para informar o quadro.
Exemplos
O exemplo a seguir responde a um clique de botão atualizando uma variável de membro, que é considerada definida na classe derivada. Este exemplo também mostra uma função auxiliar para definir o sujo status da página de propriedades.
INT_PTR CMyProp::OnReceiveMessage(HWND hwnd,
UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_COMMAND:
if (LOWORD(wParam) == IDC_BUTTON1)
{
m_lNewVal = GetDlgItemInt(m_Dlg, IDC_EDIT1, 0, TRUE);
SetDirty();
return (INT_PTR)TRUE;
}
break;
} // switch
// Did not handle the message.
return CBasePropertyPage::OnReceiveMessage(hwnd, uMsg, wParam, lParam);
}
// Helper function to update the dirty status.
void CMyProp::SetDirty()
{
m_bDirty = TRUE;
if (m_pPageSite)
{
m_pPageSite->OnStatusChange(PROPPAGESTATUS_DIRTY);
}
}
Requisitos
Requisito | Valor |
---|---|
parâmetro |
|
Biblioteca |
|