/*************************************************
Function: CreateToolTip
Description: 在父类容器中为子控件添加Tooltip
Input: int toolID 控件ID
HWND hDlg
TCHAR* pText
Output: NULL
Return: NULL
*************************************************/
BOOL CXXX::CreateToolTip(int toolID, HWND hDlg, TCHAR* pText)
{
// toolID: the resource ID of the control.
// hDlg: the handle of the dialog box.
// pText: the text that appears in the tooltip.
// g_hInst: the global instance handle.
if (!toolID || !hDlg || !pText)
{
return FALSE;
}
// Get the window of the tool.
HWND hwndTool = ::GetDlgItem(hDlg, toolID);
HINSTANCE g_hInst = GetModuleHandle(NULL);
// Create the tooltip.
#ifndef TTS_BALLOON
#define TTS_BALLOON 0x40
#endif
HWND hwndTip = CreateWindowEx(NULL, TOOLTIPS_CLASS, NULL,
//WS_POPUP |TTS_ALWAYSTIP | TTS_BALLOON,//泡泡型
WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP,//普通方块型
CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT,
hDlg, NULL,
g_hInst, NULL);
if (!hwndTool || !hwndTip)
{
return FALSE;
}
// Associate the tooltip with the tool.
TOOLINFO toolInfo = { 0 };
toolInfo.cbSize = sizeof(toolInfo);
toolInfo.hwnd = hDlg;
toolInfo.uFlags = TTF_IDISHWND | TTF_SUBCLASS;
toolInfo.uId = (UINT_PTR)hwndTool;
toolInfo.lpszText = pText;
::SendMessage(hwndTip, TTM_ADDTOOL, 0, (LPARAM)&toolInfo);
return TRUE;
}
/*************************************************
Function: CreateToolTip
Description: 自添加Tooltip
Input: int toolID 控件ID
HWND hDlg
TCHAR* pText
Output: NULL
Return: NULL
*************************************************/
BOOL CXXX::CreateToolTip(HWND hDlg, TCHAR* pText)
{
// toolID: the resource ID of the control.
// hDlg: the handle of the dialog box.
// pText: the text that appears in the tooltip.
// g_hInst: the global instance handle.
if (!hDlg || !pText)
{
return FALSE;
}
// Get the window of the tool.
//HWND hwndTool = ::GetDlgItem(hDlg, toolID);
HWND hwndTool = this->GetSafeHwnd();
HINSTANCE g_hInst = GetModuleHandle(NULL);
// Create the tooltip.
#ifndef TTS_BALLOON
#define TTS_BALLOON 0x40
#endif
HWND hwndTip = CreateWindowEx(NULL, TOOLTIPS_CLASS, NULL,
//WS_POPUP |TTS_ALWAYSTIP | TTS_BALLOON,//泡泡型
WS_POPUP | TTS_NOPREFIX | TTS_ALWAYSTIP,//普通方块型
CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT,
hDlg, NULL,
g_hInst, NULL);
if (!hwndTool || !hwndTip)
{
return FALSE;
}
// Associate the tooltip with the tool.
TOOLINFO toolInfo = { 0 };
toolInfo.cbSize = sizeof(toolInfo);
toolInfo.hwnd = hDlg;
toolInfo.uFlags = TTF_IDISHWND | TTF_SUBCLASS;
toolInfo.uId = (UINT_PTR)hwndTool;
toolInfo.lpszText = pText;
::SendMessage(hwndTip, TTM_ADDTOOL, 0, (LPARAM)&toolInfo);
return TRUE;
}