假设在CDlg**中有一控件IDC_EDIT_A,想要鼠标指向该控件时提示,步骤如下:
1、CDlg**头文件中声明成员变量
CToolTipCtrl m_tooltip;
2、CDlg***::OnInitDialog() 中创建并设置参数
m_tooltip.Create(this);
1、CDlg**头文件中声明成员变量
CToolTipCtrl m_tooltip;
2、CDlg***::OnInitDialog() 中创建并设置参数
m_tooltip.Create(this);
//CToolTipCtrl与控件关联
m_tooltip.AddTool(GetDlgItem(IDC_EDIT_A), TTS_ALWAYSTIP);//当鼠标指向IDC_EDIT_A控件显示提示
//若如是句柄可以用FromHandle(hwnd)替换 GetDlgItem(IDC_EDIT_A)
//文字颜色
m_tooltip.SetTipTextColor(RGB(0,0,255));
//鼠标指向多久后显示提示,毫秒
m_tooltip.SetDelayTime(TTDT_INITIAL, 10);
//鼠标保持指向,提示显示多久,毫秒
m_tooltip.SetDelayTime(TTDT_AUTOPOP, 30000);
//设定显示宽度,超长内容自动换行
m_tooltip.SetMaxTipWidth(200);
3、重写PreTranslateMessage,增加以下内容:
if(m_tooltip.m_hWnd!=NULL)
{
m_tooltip.RelayEvent(pMsg);
}
4、在需要的地方动态更新tip内容
m_tooltip.UpdateTipText(str, FromHandle(hwnd));