Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Библиотека классов Microsoft Foundation (MFC) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.
Отслеживает количество сообщений Windows, например, когда пользователь выбирает элемент из меню.
Синтаксис
class CMFCCmdUsageCount : public CObject
Участники
Открытые конструкторы
| Имя | Описание |
|---|---|
CMFCCmdUsageCount::CMFCCmdUsageCount |
Конструктор по умолчанию. |
CMFCCmdUsageCount::~CMFCCmdUsageCount |
Деструктор. |
Открытые методы
| Имя | Описание |
|---|---|
| CMFCCmdUsageCount::AddCmd | Увеличивается по одному счетчику, связанному с данной командой. |
| CMFCCmdUsageCount::GetCount | Извлекает количество использования, связанное с заданным идентификатором команды. |
| CMFCCmdUsageCount::HasEnoughInformation | Определяет, собирает ли этот объект минимальный объем данных отслеживания. |
| CMFCCmdUsageCount::IsFreqeuntlyUsedCmd | Определяет, часто ли используется данная команда. |
| CMFCCmdUsageCount::Reset | Очищает количество использования всех команд. |
| CMFCCmdUsageCount::Serialize | Считывает этот объект из архива или записывает его в архив. (Переопределяет CObject::Serialize.) |
| CMFCCmdUsageCount::SetOptions | Задает значения элементов данных общего CMFCCmdUsageCount класса. |
Элементы данных
| Имя | Описание |
|---|---|
m_CmdUsage |
CMap Объект, который сопоставляет команды с их подсчетами использования. |
m_nMinUsagePercentage |
Минимальный процент использования для часто используемой команды. |
m_nStartCount |
Счетчик запуска, используемый для определения того, собирает ли этот объект минимальный объем данных отслеживания. |
m_nTotalUsage |
Количество всех отслеживаемых команд. |
Замечания
Класс CMFCCmdUsageCount сопоставляет каждый числовый идентификатор сообщения Windows с 32-разрядной целочисленной счетчиком без знака.
CMFCToolBar использует этот класс для отображения часто используемых элементов панели инструментов. Дополнительные сведения см. в CMFCToolBarразделе "Класс CMFCToolBar".
Данные класса можно сохранять CMFCCmdUsageCount между выполнением программы.
Используйте метод CMFCCmdUsageCount::Serialize для сериализации данных члена класса и метода CMFCCmdUsageCount::SetOptions, чтобы задать общие данные-члены.
Иерархия наследования
Требования
Заголовок: afxcmdusagecount.h
CMFCCmdUsageCount::AddCmd
Увеличивается по одному счетчику, связанному с данной командой.
void AddCmd(UINT uiCmd);
Параметры
uiCmd
[in] Задает счетчик команд для увеличения.
Замечания
Этот метод добавляет новую запись в структуру карт счетчиков команд, m_CmdUsageесли запись еще не существует.
Этот метод ничего не делает в следующих случаях:
Платформа панели инструментов находится в режиме настройки ( метод CMFCToolBar::IsCustomizeMode возвращает ненулевое значение).
Команда ссылается на подменю или разделитель меню ( uiCmd равно 0 или -1).
uiCmd ссылается на стандартную команду (глобальная
IsStandardCommandфункция возвращает ненулевое значение).
CMFCCmdUsageCount::GetCount
Извлекает количество использования, связанное с заданным идентификатором команды.
UINT GetCount(UINT uiCmd) const;
Параметры
uiCmd
[in] Идентификатор извлекаемого счетчика команд.
Возвращаемое значение
Число использования, связанное с заданным идентификатором команды.
CMFCCmdUsageCount::HasEnoughInformation
Определяет, получил ли этот объект минимальный объем данных отслеживания.
BOOL HasEnoughInformation() const;
Возвращаемое значение
Ненулевое значение, если этот объект получил минимальный объем данных отслеживания; в противном случае — 0.
Замечания
Этот метод возвращает ненулевое значение, если общее число команд, m_nTotalUsageиз всех отслеживаемых команд равно или больше, чем начальное число. m_nStartCount По умолчанию платформа задает начальное число 0. Это значение можно переопределить с помощью метода CMFCCmdUsageCount::SetOptions .
Этот метод используется CMFCMenuBar::IsShowAllCommands , чтобы определить, следует ли отображать все доступные команды меню.
CMFCCmdUsageCount::IsFreqeuntlyUsedCmd
Определяет, часто ли используется данная команда.
BOOL IsFreqeuntlyUsedCmd(UINT uiCmd) const;
Параметры
uiCmd
[in] Указывает команду для проверки.
Возвращаемое значение
Ненулевое значение, если команда часто используется; в противном случае — 0.
Замечания
Этот метод возвращает значение 0, если общее использование команды , m_nTotalUsageравно 0. В противном случае этот метод возвращает ненулевое значение, если процент использования указанной команды превышает минимальный процент. m_nMinUsagePercentage По умолчанию платформа задает минимальный процент 5. Это значение можно переопределить с помощью метода CMFCCmdUsageCount::SetOptions . Если минимальный процент равен 0, этот метод возвращает ненулевое значение, если указанное число команд больше 0.
CMFCToolBar::IsCommandRarelyUsed использует этот метод, чтобы определить, используется ли команда редко.
CMFCCmdUsageCount::Reset
Очищает количество использования всех команд.
void Reset();
Замечания
Вызовите этот метод, чтобы очистить все записи из структуры карт счетчиков команд, m_CmdUsageа также сбросить общее использование команд, m_nTotalUsageсчетчик 0.
CMFCCmdUsageCount::Serialize
Считывает этот объект из архива или записывает его в архив.
virtual void Serialize(CArchive& ar);
Параметры
ар
[in] CArchive Объект для сериализации из или в.
Замечания
Этот метод сериализует структуру карты счетчиков команд, m_CmdUsageа также общее использование команд, m_nTotalUsageсчетчик из указанного архива или из нее.
Примеры сериализации см. в разделе Сериализация: сериализация объекта.
CMFCCmdUsageCount::SetOptions
Задает значения элементов данных общего CMFCCmdUsageCount класса.
static BOOL __stdcall SetOptions(
UINT nStartCount,
UINT nMinUsagePercentage);
Параметры
nStartCount
[in] Новое начальное число всех отслеживаемых команд.
nMinUsagePercentage
[in] Новый минимальный процент использования.
Возвращаемое значение
Значение TRUE, если метод выполнен успешно, значение FALSE, если параметр nMinUsagePercentage больше или равен 100.
Замечания
Этот метод задает члены данных общего CMFCCmdUsageCount класса и m_nStartCountm_nMinUsagePercentage и nMinUsagePercentage соответственно.
m_nStartCount используется методом CMFCCmdUsageCount::HasEnoughInformation , чтобы определить, собрал ли этот объект минимальный объем данных отслеживания.
m_nMinUsagePercentage используется методом CMFCCmdUsageCount::IsFreqeuntlyUsedCmd , чтобы определить, часто ли используется данная команда.
В отладке этот метод создает сбой утверждения, если параметр nMinUsagePercentage больше или равен 100.