读书人

CToolTipCtrl怎么动态更新内容?(支持

发布时间: 2012-02-08 19:52:21 作者: rapoo

CToolTipCtrl如何动态更新内容?(支持多行显示)
初步的目标是希望在每次显示提示框的时候,都先计算一下数据,然后动态显示出来,数据量很多,所以需要多行显示。
CToolTipCtrl控件支持/n,所以多行显示很容易实现;但是小弟不知道如何重载CToolTipCtrl控件的每次显示,只能通过OnTimer的计时器每秒调用一次SetTooltipText,频繁更新提示的信息。其实我是希望在显示的时候,更新一次就可以了。

TTN_NEEDTEXT消息倒是可以在每次显示的时候,询问显示的字符串,但是它那个消息结构TOOLTIPTEXT的字符串,好像不支持多行显示……、而且我只能够显示在控件的底部,效果更差

想问一下如何既支持提示信息的多行显示,还可以在每次显示的时候,让我手动更新提示信息呢?

[解决办法]
OnTimer的计时器每秒调用一次SetTooltipText
--------------------------------------
你可以设一个变量用来控制,当它为真是更新,更新后置它为假,反之不更新.

而当文字更新时置该值为真.
[解决办法]
不知道是不是说要用到这个
BOOL CMyDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
m_toolTip.RelayEvent(pMsg);
return CDialog::PreTranslateMessage(pMsg);
}

读书人网 >VC/MFC

热点推荐