CMFCCmdUsageCount (clase)

Realiza un seguimiento del recuento de uso de los mensajes de Windows, como cuando el usuario selecciona un elemento de un menú.

Sintaxis

class CMFCCmdUsageCount : public CObject

Miembros

Constructores públicos

Nombre Descripción
CMFCCmdUsageCount::CMFCCmdUsageCount Constructor predeterminado.
CMFCCmdUsageCount::~CMFCCmdUsageCount Destructor.

Métodos públicos

Nombre Descripción
CMFCCmdUsageCount::AddCmd Incrementa en uno el contador asociado al comando especificado.
CMFCCmdUsageCount::GetCount Recupera el recuento de uso asociado al identificador de comando especificado.
CMFCCmdUsageCount::HasEnoughInformation Determina si este objeto ha recopilado la cantidad mínima de datos de seguimiento.
CMFCCmdUsageCount::IsFreqeuntlyUsedCmd Determina si el comando especificado se usa con frecuencia.
CMFCCmdUsageCount::Reset Borra el recuento de uso de todos los comandos.
CMFCCmdUsageCount::Serialize Lee este objeto desde un archivo o lo escribe en un archivo. (Invalida CObject::Serialize).
CMFCCmdUsageCount::SetOptions Establece los valores de los miembros de datos de la clase CMFCCmdUsageCount compartida.

Miembros de datos

Nombre Descripción
m_CmdUsage Objeto CMap que asigna los comandos a sus recuentos de uso.
m_nMinUsagePercentage Porcentaje de uso mínimo para que un comando se considere de uso frecuente.
m_nStartCount Contador de inicio que se usa para determinar si este objeto ha recopilado la cantidad mínima de datos de seguimiento.
m_nTotalUsage Recuento de todos los comandos con seguimiento.

Comentarios

La clase CMFCCmdUsageCount asigna cada identificador numérico de mensaje de Windows a un contador entero sin signo de 32 bits. CMFCToolBar usa esta clase para mostrar los elementos de la barra de herramientas que se usan con frecuencia. Para obtener más información sobre CMFCToolBar, consulte Clase CMFCToolBar.

Puede conservar los datos de la clase CMFCCmdUsageCount entre las distintas ejecuciones del programa. Use el método CMFCCmdUsageCount::Serialize para serializar los datos de miembro de clase y el método CMFCCmdUsageCount::SetOptions para establecer datos de miembro compartidos.

Jerarquía de herencia

CObject

CMFCCmdUsageCount

Requisitos

Header: afxcmdusagecount.h

CMFCCmdUsageCount::AddCmd

Incrementa en uno el contador asociado al comando especificado.

void AddCmd(UINT uiCmd);

Parámetros

uiCmd
[in] Especifica el contador de comandos que se va a incrementar.

Comentarios

Este método agrega una nueva entrada a la estructura de asignación de recuentos de comandos, m_CmdUsage, si la entrada no existe aún.

Este método no realiza ninguna acción en los casos siguientes:

  • El marco de la barra de herramientas está en modo de personalización (el método CMFCToolBar::IsCustomizeMode devuelve un valor distinto de cero).

  • El comando hace referencia a un separador de menús o submenús (uiCmd es igual a 0 o -1).

  • uiCmd hace referencia a un comando estándar (la función global IsStandardCommand devuelve un valor distinto de cero).

CMFCCmdUsageCount::GetCount

Recupera el recuento de uso asociado al identificador de comando especificado.

UINT GetCount(UINT uiCmd) const;

Parámetros

uiCmd
[in] Identificador del contador de comandos que se va a recuperar.

Valor devuelto

Recuento de uso asociado al identificador de comando especificado.

CMFCCmdUsageCount::HasEnoughInformation

Determina si este objeto ha recibido la cantidad mínima de datos de seguimiento.

BOOL HasEnoughInformation() const;

Valor devuelto

Distinto de cero si este objeto ha recibido la cantidad mínima de datos de seguimiento; de lo contrario, 0.

Comentarios

Este método devuelve un valor distinto de cero si el recuento total, m_nTotalUsage, de todos los comandos con seguimiento es igual o mayor que el recuento inicial, m_nStartCount. De forma predeterminada, el marco establece el recuento inicial 0. Puede invalidar este valor mediante el método CMFCCmdUsageCount::SetOptions.

CMFCMenuBar::IsShowAllCommands usa este método para determinar si se van a mostrar todos los comandos de menú disponibles.

CMFCCmdUsageCount::IsFreqeuntlyUsedCmd

Determina si el comando especificado se usa con frecuencia.

BOOL IsFreqeuntlyUsedCmd(UINT uiCmd) const;

Parámetros

uiCmd
[in] Especifica el comando que se va a comprobar.

Valor devuelto

Distinto de cero si el comando se usa con frecuencia; de lo contrario, 0.

Comentarios

Este método devuelve 0 si el uso total del comando, m_nTotalUsage, es 0. De lo contrario, el método devuelve un valor distinto de cero si el porcentaje de uso del comando especificado es mayor que el porcentaje mínimo, m_nMinUsagePercentage. De forma predeterminada, el marco establece el porcentaje mínimo en 5. Puede invalidar este valor mediante el método CMFCCmdUsageCount::SetOptions. Si el porcentaje mínimo es 0, el método devuelve un valor distinto de cero si el recuento del comando especificado es mayor que 0.

CMFCToolBar::IsCommandRarelyUsed usa este método para determinar si un comando se usa con poca frecuencia.

CMFCCmdUsageCount::Reset

Borra el recuento de uso de todos los comandos.

void Reset();

Comentarios

Llame a este método para borrar todas las entradas de la estructura de asignación de recuentos de comandos, m_CmdUsage, y para restablecer a 0 el contador de uso total de comandos, m_nTotalUsage.

CMFCCmdUsageCount::Serialize

Lee este objeto desde un archivo o lo escribe en un archivo.

virtual void Serialize(CArchive& ar);

Parámetros

Ar
[in] Objeto CArchive desde o hacia el que se va a serializar.

Comentarios

Este método serializa la estructura de asignación de recuentos de comandos, m_CmdUsage, y el contador de uso total de comandos, m_nTotalUsage, desde o hacia el archivo especificado.

Para obtener ejemplos de serialización, consulte Serialización: Serializar un objeto.

CMFCCmdUsageCount::SetOptions

Establece los valores de los miembros de datos de la clase CMFCCmdUsageCount compartida.

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

Parámetros

nStartCount
[in] Nuevo recuento inicial de todos los comandos con seguimiento.

nMinUsagePercentage
[in] Nuevo porcentaje de uso mínimo.

Valor devuelto

TRUE si el método se ejecuta correctamente; FALSE si el parámetro nMinUsagePercentage es mayor o igual que 100.

Comentarios

Este método establece los miembros de datos de la clase CMFCCmdUsageCount compartida m_nStartCount y m_nMinUsagePercentage en nStartCount y nMinUsagePercentage, respectivamente. El método CMFCCmdUsageCount::HasEnoughInformation usa m_nStartCount para determinar si este objeto ha recopilado la cantidad mínima de datos de seguimiento. El método CMFCCmdUsageCount::IsFreqeuntlyUsedCmd usa m_nMinUsagePercentage para determinar si se usa con frecuencia un comando determinado.

En las compilaciones de depuración, el método genera un error de aserción si el parámetro nMinUsagePercentage es mayor o igual que 100.

Consulte también

Gráfico de jerarquías
Clases
CMFCToolBar (clase)