Função de retorno de chamada LPCCHOOKPROC (commdlg.h)
Recebe mensagens ou notificações destinadas ao procedimento da caixa de diálogo padrão da caixa de diálogo Cor . Essa é uma função de retorno de chamada definida pelo aplicativo ou definida pela biblioteca que é usada com a função ChooseColor .
O tipo LPCCHOOKPROC define um ponteiro para essa função de retorno de chamada. CCHookProc é um espaço reservado para o nome da função definida pelo aplicativo.
Sintaxe
LPCCHOOKPROC Lpcchookproc;
UINT_PTR Lpcchookproc(
HWND unnamedParam1,
UINT unnamedParam2,
WPARAM unnamedParam3,
LPARAM unnamedParam4
)
{...}
Parâmetros
unnamedParam1
Um identificador para a caixa de diálogo Cor para a qual a mensagem se destina.
unnamedParam2
O identificador da mensagem que está sendo recebida.
unnamedParam3
Informações adicionais sobre a mensagem. O significado exato depende do valor do parâmetro unnamedParam2 .
unnamedParam4
Informações adicionais sobre a mensagem. O significado exato depende do valor do parâmetro unnamedParam2 . Se o parâmetro unnamedParam2 indicar a mensagem WM_INITDIALOG , unnamedParam4 será um ponteiro para uma estrutura CHOOSECOLOR que contém os valores especificados quando a caixa de diálogo foi criada.
Retornar valor
Se o procedimento de gancho retornar zero, o procedimento da caixa de diálogo padrão processará a mensagem.
Se o procedimento de gancho retornar um valor diferente de zero, o procedimento da caixa de diálogo padrão ignorará a mensagem.
Comentários
Ao usar a função ChooseColor para criar uma caixa de diálogo Cor , você pode fornecer um procedimento de gancho CCHookProc para processar mensagens ou notificações destinadas ao procedimento da caixa de diálogo. Para habilitar o procedimento de gancho, use a estrutura CHOOSECOLOR que você passou para a função de criação da caixa de diálogo. Especifique o endereço do procedimento de gancho no membro lpfnHook e especifique o sinalizador CC_ENABLEHOOK no membro Flags .
O procedimento da caixa de diálogo padrão processa a mensagem WM_INITDIALOG antes de passá-la para o procedimento de gancho. Para todas as outras mensagens, o procedimento de gancho recebe a mensagem primeiro. Em seguida, o valor retornado do procedimento de gancho determina se o procedimento de diálogo padrão processa a mensagem ou a ignora.
Se o procedimento de gancho processar a mensagem WM_CTLCOLORDLG , ele deverá retornar um identificador de pincel válido para pintar a tela de fundo da caixa de diálogo. Em geral, se o procedimento de gancho processar qualquer mensagem WM_CTLCOLOR* , ele deverá retornar um identificador de pincel válido para pintar a tela de fundo do controle especificado.
Não chame a função EndDialog do procedimento de gancho. Em vez disso, o procedimento de gancho pode chamar a função PostMessage para postar uma mensagem WM_COMMAND com o valor IDABORT no procedimento da caixa de diálogo. Postar IDABORT fecha a caixa de diálogo e faz com que a função da caixa de diálogo retorne FALSE. Se você precisar saber por que o procedimento de gancho fechou a caixa de diálogo, forneça seu próprio mecanismo de comunicação entre o procedimento de gancho e seu aplicativo.
Você pode subclasse os controles padrão de uma caixa de diálogo comum. No entanto, o procedimento da caixa de diálogo também pode subclasse dos controles. Por isso, você deve controlar a subclasse quando o procedimento de gancho processar a mensagem de WM_INITDIALOG . Isso garante que o procedimento de subclasse receba as mensagens específicas do controle antes do procedimento de subclasse definido pelo procedimento da caixa de diálogo.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | commdlg.h (inclua Windows.h) |
Confira também
Biblioteca de caixas de diálogo comuns
Conceitual
Referência