Класс CTooltipManager
Хранит сведения среды выполнения о подсказках. Экземпляр класса CTooltipManager
создается один раз для каждого приложения.
Синтаксис
class CTooltipManager : public CObject
Участники
Открытые методы
Имя | Описание |
---|---|
CTooltipManager::CreateToolTip | Создает элемент управления "Всплывающая подсказка" для указанных типов элементов управления Windows. |
CTooltipManager::D eleteToolTip | Удаляет элемент управления "Всплывающая подсказка". |
CTooltipManager::SetTooltipParams | Настраивает внешний вид элемента управления "Всплывающая подсказка" для указанных типов элементов управления Windows. |
CTooltipManager::SetTooltipText | Задает текст и описание для элемента управления "Всплывающая подсказка". |
CTooltipManager::UpdateTooltips |
Замечания
Используйте класс CMFCToolTipCtrl и CMFCToolTipInfo
CTooltipManager
вместе для реализации настраиваемых подсказок в приложении. Пример использования этих классов подсказки см. в разделе класса CMFCToolTipCtrl.
Иерархия наследования
Требования
Заголовок: afxtooltipmanager.h
CTooltipManager::CreateToolTip
Создает элемент управления подсказки.
static BOOL CreateToolTip(
CToolTipCtrl*& pToolTip,
CWnd* pWndParent,
UINT nType);
Параметры
pToolTip
[out] Ссылка на указатель подсказки. Он указывает на только что созданную подсказку при возврате функции.
pWndParent
[in] Родительский элемент подсказки.
nType
[in] Тип подсказки.
Возвращаемое значение
Ненулевое значение, если подсказка была создана успешно.
Замечания
Необходимо вызвать CTooltipManager::D eleteToolTip, чтобы удалить элемент управления подсказки , передаваемый обратно в pToolTip.
CTooltipManager задает параметры визуального отображения каждой подсказки, создаваемой на основе типа подсказки, указываемого nType. Чтобы изменить параметры для одного или нескольких типов подсказки, вызовите CTooltipManager::SetTooltipParams.
Допустимые типы подсказки перечислены в следующей таблице:
Тип подсказки | Категория элементов управления | Примеры типов |
---|---|---|
AFX_TOOLTIP_TYPE_BUTTON | Кнопка. | CMFCButton |
AFX_TOOLTIP_TYPE_CAPTIONBAR | Строка заголовка. | CMFCCaptionBar |
AFX_TOOLTIP_TYPE_DEFAULT | Любой элемент управления, который не соответствует другой категории. | Нет. |
AFX_TOOLTIP_TYPE_DOCKBAR | Панель закрепления. | CDockablePane |
AFX_TOOLTIP_TYPE_EDIT | Текстовое поле. | Нет. |
AFX_TOOLTIP_TYPE_MINIFRAME | Мини-кадр. | CPaneFrameWnd |
AFX_TOOLTIP_TYPE_PLANNER | Планировщик. | Нет. |
AFX_TOOLTIP_TYPE_RIBBON | Панель ленты. | CMFCRibbonBar, CMFCRibbonPanelMenuBar |
AFX_TOOLTIP_TYPE_TAB | Элемент управления tab. | CMFCTabCtrl |
AFX_TOOLTIP_TYPE_TOOLBAR | Панель инструментов. | CMFCToolBar, CMFCPopupMenuBar |
AFX_TOOLTIP_TYPE_TOOLBOX | Панель элементов. | Нет. |
CTooltipManager::D eleteToolTip
Удаляет элемент управления "Всплывающая подсказка".
static void DeleteToolTip(CToolTipCtrl*& pToolTip);
Параметры
pToolTip
[in, out] Ссылка на указатель на подсказку для уничтожения.
Замечания
Вызовите этот метод для каждого класса CToolTipCtrl, созданного CTooltipManager::CreateToolTip. Родительский элемент управления должен вызывать этот метод из обработчика OnDestroy
. Это необходимо для правильного удаления подсказки из платформы. Этот метод задает pToolTip значение NULL перед возвратом.
CTooltipManager::SetTooltipParams
Настраивает внешний вид элемента управления подсказки для указанных типов элементов управления Windows.
void SetTooltipParams(
UINT nTypes,
CRuntimeClass* pRTC=RUNTIME_CLASS(CMFCToolTipCtrl),
CMFCToolTipInfo* pParams=NULL);
Параметры
nTypes
[in] Задает типы элементов управления.
pRTC
[in] Класс среды выполнения пользовательской подсказки.
pParams
[in] Параметры подсказки.
Замечания
Этот метод задает класс среды выполнения и начальные параметры, используемые CToolTipManager при создании подсказок. Когда элемент управления вызывает CTooltipManager::CreateToolTip и передает тип подсказки, который является одним из типов, указанных в nTypes, диспетчер подсказки создает элемент управления подсказки, который является экземпляром класса среды выполнения, заданного pRTC, и передает параметры, заданные pParams в новую подсказку.
При вызове этого метода все существующие владельцы подсказки получают сообщение AFX_WM_UPDATETOOLTIPS, и они должны повторно создать подсказки с помощью CTooltipManager::CreateToolTip.
nTypes может быть любым сочетанием допустимых типов подсказки, которые использует CTooltipManager::CreateToolTip , или может быть AFX_TOOLTIP_TYPE_ALL. При передаче AFX_TOOLTIP_TYPE_ALL все типы подсказки затрагиваются.
Пример
В следующем примере показано, как использовать SetTooltipParams
метод CTooltipManager
класса. Этот фрагмент кода входит в состав примера Draw Client.
CMFCToolTipInfo params;
params.m_bVislManagerTheme = TRUE;
theApp.GetTooltipManager()->SetTooltipParams(AFX_TOOLTIP_TYPE_ALL, RUNTIME_CLASS(CMFCToolTipCtrl), ¶ms);
CTooltipManager::SetTooltipText
Задает текст и описание подсказки.
static void SetTooltipText(
TOOLINFO* pTI,
CToolTipCtrl* pToolTip,
UINT nType,
const CString strText,
LPCTSTR lpszDescr=NULL);
Параметры
pTI
[in] Указатель на объект TOOLINFO.
pToolTip
[in, out] Указатель на элемент управления подсказки, для которого необходимо задать текст и описание.
nType
[in] Указывает тип элемента управления, с которым связана эта подсказка.
strText
[in] Текст, заданный как текст подсказки.
lpszDescr
[in] Указатель на описание подсказки. Может иметь значение NULL.
Замечания
Значение nType должно совпадать с параметром nType cTooltipManager::CreateToolTip при создании подсказки.
CTooltipManager::UpdateTooltips
Дополнительные сведения см. в исходном коде, расположенном в папке VC\atlmfc\src\mfc установки Visual Studio.
void UpdateTooltips();
Замечания
См. также
Диаграмма иерархии
Классы
Класс CMFCToolTipCtrl
Класс CMFCToolTipInfo