Partilhar via


Classe CSnapInPropertyPageImpl

Observação

A Active Template Library (ATL) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Esta classe fornece métodos para implementar um objeto de página de propriedades snap-in.

Importante

Esta classe e os seus membros não podem ser usados em aplicações que sejam executadas no Windows Runtime.

Sintaxe

template <class T, bool bAutoDelete = true>
class ATL_NO_VTABLE CSnapInPropertyPageImpl : public CDialogImplBase

Membros

Construtores Públicos

Nome Description
CSnapInPropertyPageImpl::CSnapInPropertyPageImpl Construtor.

Métodos Públicos

Nome Description
CSnapInPropertyPageImpl::CancelToClose Altera o estado dos botões OK e Cancelar .
CSnapInPropertyPageImpl::Create Inicializa um objeto recém-criado CSnapInPropertyPageImpl .
CSnapInPropertyPageImpl::OnApply É chamado pelo framework quando o utilizador clica no botão Aplicar Agora enquanto usa uma folha de propriedades do tipo assistente.
CSnapInPropertyPageImpl::OnHelp É chamada pelo framework quando o utilizador clica no botão Ajuda enquanto utiliza uma folha de propriedades do tipo assistente.
CSnapInPropertyPageImpl::OnKillActive É chamado pelo framework quando a página atual deixa de estar ativa.
CSnapInPropertyPageImpl::OnQueryCancel É chamado pelo framework quando o utilizador clica no botão Cancelar e antes do cancelamento ter ocorrido.
CSnapInPropertyPageImpl::OnReset É chamada pela framework quando o utilizador clica no botão Resetar enquanto utiliza uma folha de propriedades do tipo assistente.
CSnapInPropertyPageImpl::OnSetActive Chamado pelo framework quando a página atual se torna ativa.
CSnapInPropertyPageImpl::OnWizardBack É chamado pela framework quando o utilizador clica no botão Voltar enquanto usa uma folha de propriedades do tipo assistente.
CSnapInPropertyPageImpl::OnWizardFinish É chamado pela framework quando o utilizador clica no botão Terminar enquanto usa uma folha de propriedades do tipo assistente.
CSnapInPropertyPageImpl::OnWizardNext É chamado pelo framework quando o utilizador clica no botão Seguinte enquanto usa uma folha de propriedades do tipo assistente.
CSnapInPropertyPageImpl::QuerySiblings Encaminha a mensagem atual para todas as páginas da folha de propriedades.
CSnapInPropertyPageImpl::SetModified Chame para ativar ou desativar o botão Aplicar Agora .

Membros de Dados Públicos

Nome Description
CSnapInPropertyPageImpl::m_psp A estrutura do Windows PROPSHEETPAGE usada pelo CSnapInPropertyPageImpl objeto.

Observações

CSnapInPropertyPageImpl fornece uma implementação básica para um objeto de página de propriedades de encaixe. As funcionalidades básicas de uma página de propriedades snap-in são implementadas através de várias interfaces e tipos de mapas diferentes.

Hierarquia de herança

CDialogImplBase

CSnapInPropertyPageImpl

Requerimentos

Cabeçalho: atlsnap.h

CSnapInPropertyPageImpl::CancelToClose

Chame esta função após uma alteração irrecuperável ter sido feita aos dados numa página de uma folha de propriedades modais.

void CancelToClose();

Observações

Esta função altera o botão OK para Fechar e desativa o botão Cancelar . Esta alteração alerta o utilizador de que uma alteração é permanente e que as modificações não podem ser canceladas.

A CancelToClose função membro não faz nada numa folha de propriedades sem modos, porque uma folha de propriedades sem modos não tem um botão Cancelar por defeito.

CSnapInPropertyPageImpl::CSnapInPropertyPageImpl

Constrói um CSnapInPropertyPageImpl objeto.

CSnapInPropertyPageImpl(LPCTSTR lpszTitle = NULL);

Parâmetros

lpszTítulo
[dentro] O título da página da propriedade.

Observações

Para inicializar a estrutura subjacente, chame CSnapInPropertyPageImpl::Create.

CSnapInPropertyPageImpl::Create

Chame esta função para inicializar a estrutura subjacente da página de propriedades.

HPROPSHEETPAGE Create();

Valor de retorno

Um handle para uma PROPSHEETPAGE estrutura que contém os atributos da folha de propriedades recém-criada.

Observações

Deves primeiro ligar para CSnapInPropertyPageImpl::CSnapInPropertyPageImpl antes de chamar esta função.

CSnapInPropertyPageImpl::m_psp

m_psp é uma estrutura cujos membros armazenam as características de PROPSHEETPAGE.

PROPSHEETPAGE m_psp;

Observações

Use esta estrutura para inicializar a aparência de uma página de propriedades após a sua construção.

Para mais informações sobre esta estrutura, incluindo uma lista dos seus membros, consulte PROPSHEETPAGE no SDK do Windows.

CSnapInPropertyPageImpl::OnApply

Esta função membro é chamada quando o utilizador clica no botão OK ou no botão Aplicar Agora .

BOOL OnApply();

Valor de retorno

Não nula se as alterações forem aceites; caso contrário, 0.

Observações

Antes de OnApply poder ser chamado pelo framework, deve ter chamado SetModified e definido o seu parâmetro como TRUE. Isto ativará o botão Aplicar Agora assim que o utilizador fizer uma alteração na página de propriedades.

Sobreescreva esta função membro para especificar que ação o seu programa realiza quando o utilizador clica no botão Aplicar Agora . Ao ser sobreposta, a função deve devolver TRUE para aceitar alterações e FALSE para impedir que alterações tenham efeito.

A implementação padrão de OnApply retorna TRUE.

CSnapInPropertyPageImpl::OnHelp

Esta função membro é chamada quando o utilizador clica no botão Ajuda da página de propriedades.

void OnHelp();

Observações

Substitua esta função de membro para mostrar ajuda na página de propriedades.

CSnapInPropertyPageImpl::OnKillActive

Esta função membro é chamada quando a página já não é a página ativa.

BOOL OnKillActive();

Valor de retorno

Não nulo se os dados foram atualizados com sucesso; caso contrário, 0.

Observações

Substitua esta função membro para realizar tarefas especiais de validação de dados.

CSnapInPropertyPageImpl::OnQueryCancel

Esta função de membro é chamada quando o utilizador clica no botão Cancelar e antes de a ação de cancelar ter ocorrido.

BOOL OnQueryCancel();

Valor de retorno

Não nulo para permitir a operação de cancelamento; caso contrário, 0.

Observações

Substitua esta função de membro para especificar uma ação que o programa realiza quando o utilizador clica no botão Cancelar .

A implementação padrão de OnQueryCancel retorna TRUE.

CSnapInPropertyPageImpl::OnReset

Esta função membro é chamada quando o utilizador clica no botão Cancelar .

void OnReset();

Observações

Quando esta função é chamada, as alterações a todas as páginas de propriedades feitas pelo utilizador ao clicar anteriormente no botão Aplicar Agora são descartadas, e a folha de propriedades mantém o foco.

Substitua esta função membro para especificar que ação o programa realiza quando o utilizador clica no botão Cancelar .

CSnapInPropertyPageImpl::OnSetActive

Esta função membro é chamada quando a página é escolhida pelo utilizador e se torna a página ativa.

BOOL OnSetActive();

Valor de retorno

Diferente de zero se a página foi ativada com sucesso; caso contrário, 0.

Observações

Substitua esta função membro para executar tarefas quando uma página é ativada. A sua substituição desta função membro deve chamar a versão padrão antes de qualquer outro processamento ser feito.

A implementação padrão devolve TRUE.

CSnapInPropertyPageImpl::OnWizardBack

Esta função membro é chamada quando o utilizador clica no botão Voltar num assistente.

BOOL OnWizardBack();

Valor de retorno

  • 0 para avançar automaticamente para a página anterior.

  • -1 para evitar que a página mude.

Para saltar para uma página diferente da seguinte, devolve o identificador da caixa de diálogo a ser exibida.

Observações

Substitua esta função de membro para especificar alguma ação que o utilizador deve realizar quando o botão Voltar é carregado.

CSnapInPropertyPageImpl::OnWizardFinish

Esta função membro é chamada quando o utilizador clica no botão Terminar num assistente.

BOOL OnWizardFinish();

Valor de retorno

Diferente de zero se a ficha de propriedades for destruída quando o assistente terminar; caso contrário, zero.

Observações

Substitua esta função membro para especificar alguma ação que o utilizador deve realizar quando o botão Terminar é clicado.

CSnapInPropertyPageImpl::OnWizardNext

Esta função membro é chamada quando o utilizador clica no botão Seguinte num assistente.

BOOL OnWizardNext();

Valor de retorno

  • 0 para avançar automaticamente para a página seguinte.

  • -1 para evitar que a página mude.

Para saltar para uma página diferente da seguinte, devolve o identificador da caixa de diálogo a ser exibida.

Observações

Sobrescrita esta função membro para especificar alguma ação que o utilizador deve realizar quando o botão Seguinte for carregado.

CSnapInPropertyPageImpl::QuerySiblings

Chame esta função membro para encaminhar uma mensagem para cada página da folha de proprietários.

LRESULT QuerySiblings(WPARAM wParam, LPARAM lParam);

Parâmetros

wParam
[dentro] Especifica informação adicional dependente da mensagem.

lParam
[dentro] Especifica informação adicional dependente da mensagem.

Valor de retorno

Diferente de zero se a mensagem não for encaminhada para a próxima página de propriedades; caso contrário, zero.

Observações

Se uma página devolver um valor diferente de zero, a folha de propriedades não envia a mensagem para as páginas seguintes.

CSnapInPropertyPageImpl::SetModified

Chame esta função membro para ativar ou desativar o botão Aplicar Agora , dependendo se as definições na página de propriedades devem ser aplicadas ao objeto externo apropriado.

void SetModified(BOOL bChanged = TRUE);

Parâmetros

bAlterado
[dentro] TRUE para indicar que as definições da página de propriedades foram modificadas desde a última vez que foram aplicadas; FALSE para indicar que as definições da página de propriedades foram aplicadas, ou devem ser ignoradas.

Observações

A folha de propriedades regista quais as páginas "sujas", ou seja, páginas de propriedades para as quais chamou SetModified( TRUE ). O botão Candidatar-se Agora estará sempre ativado se ligar SetModified( TRUE ) para uma das páginas. O botão Candidatar-se Agora será desativado quando chamar SetModified( FALSE ) uma das páginas, mas apenas se nenhuma das outras páginas estiver "suja".

Consulte também

Visão geral da classe