Sera » 08 сен 2005, 11:52
Eugie, Спасибо за помощь. Фильтровка сообщений для tooltip-а добавлена. Хотя tooltip RelayEvent не съедает сообщения. Использует он их или нет -- все равно сообщения передаются дальше. А вот лишние разы слать TTM_RELAYEVENT неэффективно.
По сабжу: В первый раз TTN_SHOW и TTN_POP доходят. А потом нет.
Я тут попробовала сделать простенькое mfc dialog-based приложеньице.
Добавляю
CToolTipCtrl m_tip;
PretranslateMessage { m_tip.RelayEvent + фильтр
}
OnInitDialog()
{
m_tip.Create(m_hWnd);
m_tip.AddTool(
//GetDlgItem(IDOK), //в этом случае все работает супер
m_hWnd, /*а так tooltip появляется и отрабатывает один раз. В следующий раз может появиться, если провести мышу над другим DlgItem-ом диалога. А если выводить за границу окна и возвращаться, то не появляется
*/
_T("Hi, Tooltip!!!"));
m_tip.Activate(TRUE);
}
Eugie, Спасибо за помощь. Фильтровка сообщений для tooltip-а добавлена. Хотя tooltip RelayEvent не съедает сообщения. Использует он их или нет -- все равно сообщения передаются дальше. А вот лишние разы слать TTM_RELAYEVENT неэффективно.
По сабжу: В первый раз TTN_SHOW и TTN_POP доходят. А потом нет.
Я тут попробовала сделать простенькое mfc dialog-based приложеньице.
Добавляю
CToolTipCtrl m_tip;
PretranslateMessage { m_tip.RelayEvent + фильтр :) }
OnInitDialog()
{
m_tip.Create(m_hWnd);
m_tip.AddTool(
//GetDlgItem(IDOK), //в этом случае все работает супер
m_hWnd, /*а так tooltip появляется и отрабатывает один раз. В следующий раз может появиться, если провести мышу над другим DlgItem-ом диалога. А если выводить за границу окна и возвращаться, то не появляется :( */
_T("Hi, Tooltip!!!"));
m_tip.Activate(TRUE);
}