Partilhar via


Classe CMFCCmdUsageCount

Observação

A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Regista a contagem de utilização das mensagens do Windows, como quando o utilizador seleciona um item num menu.

Sintaxe

class CMFCCmdUsageCount : public CObject

Membros

Construtores Públicos

Nome Description
CMFCCmdUsageCount::CMFCCmdUsageCount Construtor padrão.
CMFCCmdUsageCount::~CMFCCmdUsageCount Destruidor.

Métodos Públicos

Nome Description
CMFCCmdUsageCount::AddCmd Incrementa em um o contador associado ao comando dado.
CMFCCmdUsageCount::GetCount Recupera a contagem de utilização associada ao ID do comando indicado.
CMFCCmdUsageCount::HasEnoughInformation Determina se este objeto recolheu a quantidade mínima de dados de rastreamento.
CMFCCmdUsageCount::IsFreqeuntlyUsedCmd Determina se o comando dado é frequentemente usado.
CMFCCmdUsageCount::Reset Elimina a contagem de utilização de todos os comandos.
CMFCCmdUsageCount::Serialize Lê este objeto de um arquivo ou escreve-o num arquivo. ( Sobrepõe CObject::Serialize.)
CMFCCmdUsageCount::SetOptions Define os valores dos membros de dados de classe partilhados CMFCCmdUsageCount .

Membros de Dados

Nome Description
m_CmdUsage Um objeto que mapeia CMap comandos para o seu número de utilizações.
m_nMinUsagePercentage A percentagem mínima de utilização para que um comando seja usado frequentemente.
m_nStartCount O contador de início que é usado para determinar se este objeto recolheu a quantidade mínima de dados de rastreamento.
m_nTotalUsage A contagem de todos os comandos rastreados.

Observações

A CMFCCmdUsageCount classe mapeia cada identificador numérico de mensagem Windows para um contador de inteiros não assinados de 32 bits. CMFCToolBar utiliza esta classe para mostrar itens frequentemente usados na barra de ferramentas. Para mais informações sobre CMFCToolBar, consulte CMFCToolBar Class.

Podes persistir CMFCCmdUsageCount dados de classe entre execuções do teu programa. Use o método CMFCCmdUsageCount::Serialize para serializar os dados dos membros da classe e o método CMFCCmdUsageCount::SetOptions para definir os dados partilhados dos membros.

Hierarquia de herança

CObject

CMFCCmdUsageCount

Requerimentos

Cabeçalho: afxcmdusagecount.h

CMFCCmdUsageCount::AddCmd

Incrementa em um o contador associado ao comando dado.

void AddCmd(UINT uiCmd);

Parâmetros

uiCmd
[dentro] Especifica o contador de comandos para incrementar.

Observações

Este método adiciona uma nova entrada à estrutura do mapa de contagens de comandos, m_CmdUsage, se a entrada ainda não existir.

Este método não faz nada nos seguintes casos:

  • A estrutura da barra de ferramentas está em modo de personalização (o método CMFCToolBar::IsCustomizeMode devolve um valor diferente de zero).

  • O comando refere-se a um submenu ou separador de menu ( uiCmd igual a 0 ou -1).

  • uiCmd refere-se a um comando padrão (a função global IsStandardCommand devolve um valor não nulo).

CMFCCmdUsageCount::GetCount

Recupera a contagem de utilização associada ao ID do comando indicado.

UINT GetCount(UINT uiCmd) const;

Parâmetros

uiCmd
[dentro] O ID do contador de comandos a recuperar.

Valor de retorno

A contagem de utilização associada ao ID de comando indicado.

CMFCCmdUsageCount::HasEnoughInformation

Determina se este objeto recebeu a quantidade mínima de dados de rastreamento.

BOOL HasEnoughInformation() const;

Valor de retorno

Não nulo se este objeto tiver recebido a quantidade mínima de dados de rastreamento; caso contrário, 0.

Observações

Este método devolve um valor não nulo se a contagem total, m_nTotalUsage, de todos os comandos acompanhados for igual ou maior que a contagem inicial, m_nStartCount. Por defeito, a estrutura define a contagem inicial 0. Pode sobrescrever este valor usando o método CMFCCmdUsageCount::SetOptions .

Este método é usado pelo CMFCMenuBar::IsShowAllCommands para determinar se deve mostrar todos os comandos de menu disponíveis.

CMFCCmdUsageCount::IsFreqeuntlyUsedCmd

Determina se o comando dado é frequentemente usado.

BOOL IsFreqeuntlyUsedCmd(UINT uiCmd) const;

Parâmetros

uiCmd
[dentro] Especifica o comando para verificar.

Valor de retorno

Não nulo se o comando for frequentemente usado; caso contrário, 0.

Observações

Este método retorna 0 se o uso total do comando, m_nTotalUsage, for 0. Caso contrário, este método retorna não nulo se a percentagem do qual o comando especificado é usado for maior do que a percentagem mínima, m_nMinUsagePercentage. Por defeito, o framework define a percentagem mínima para 5. Pode sobrescrever este valor usando o método CMFCCmdUsageCount::SetOptions . Se a percentagem mínima for 0, este método devolve não nulo se o número de comandos especificado for superior a 0.

O CMFCToolBar::IsCommandRarelyUsed utiliza este método para determinar se um comando é raramente utilizado.

CMFCCmdUsageCount::Reset

Elimina a contagem de utilização de todos os comandos.

void Reset();

Observações

Chame este método para limpar todas as entradas da estrutura do mapa de contagens de comandos, m_CmdUsage, e para redefinir o contador total de utilização de comandos, m_nTotalUsage, para 0.

CMFCCmdUsageCount::Serialize

Lê este objeto a partir de um arquivo, ou escreve-o num arquivo.

virtual void Serialize(CArchive& ar);

Parâmetros

ar
[dentro] Um CArchive objeto para serializar de ou para.

Observações

Este método serializa a estrutura do mapa das contagens de comandos, m_CmdUsage, e o contador total de utilização de comandos, m_nTotalUsage, de ou para o arquivo especificado.

Para exemplos de serialização, veja Serialização: Serializar um Objeto.

CMFCCmdUsageCount::SetOptions

Define os valores dos membros de dados de classe partilhados CMFCCmdUsageCount .

static BOOL __stdcall SetOptions(
    UINT nStartCount,
    UINT nMinUsagePercentage);

Parâmetros

nStartCount
[dentro] A nova contagem inicial de todos os comandos rastreados.

nMinUsagePercentage
[dentro] A nova percentagem mínima de utilização.

Valor de retorno

TRUE se o método tiver sucesso, FALSE se o parâmetro nMinUsagePercentage for maior ou igual a 100.

Observações

Este método define os membros m_nStartCount de dados da classe partilhada CMFCCmdUsageCount e m_nMinUsagePercentage para nStartCount e nMinUsagePercentage, respetivamente. m_nStartCount é utilizado pelo método CMFCCmdUsageCount::HasEnoughInformation para determinar se este objeto recolheu a quantidade mínima de dados de rastreio. m_nMinUsagePercentage é usado pelo método CMFCCmdUsageCount::IsFreqeuntlyUsedCmd para determinar se um dado comando é frequentemente usado.

Em builds de depuração, este método gera uma falha de asserção se o parâmetro nMinUsagePercentage for maior ou igual a 100.

Consulte também

Gráfico de Hierarquia
Classes
Classe CMFCToolBar