鼠标在工具栏上移动时相应的按钮会显示提示信息。
问:
我想改变提示信息的显示,应该在哪里写??
谢谢
问:
我想改变提示信息的显示,应该在哪里写??
谢谢
解决方案 »
- 你们认为才谈了工资没多久 又谈有希望没
- 能不能在CTreeCtrl里查找,以及设置选中
- 超简单问题,在线求解!
- 在Active中能否设置缺省参数?
- 如何用CDatabase打开Sql server和oracle数据库?100分送上
- 再次求助,帮忙看下指针哪里出问题了
- 一定要帮我哟
- 有谁能够不用工具也能把*。CLP文件转化为BMP或者画图能够打开的文件格式(马上给分)。
- 这个函数哪里错了,该死的递归
- 内存不足,无法启动 construction.exe. 请推出部分程序,然后再试一次。
- 大哥哥们帮忙!怎样给CSocket.Connect()设置超时以及中断Connect?我很着急呀
- 急需《windows 程序设计》中文版,那能下载?
如:Create a new document\nNew
\n之前的是在状态栏显示的...\n之后的就是提示信息
我的目的是动态改变工具栏的提示信息。
也就是得到某个按钮的id,从而得到它的提示信息,查数据库,得到应该显示的信息
请问在鼠标划过工具栏时我想得到相应按狃的id,应该怎么得到,相应的消息是什么
1。首先要进行消息,映射为
ON_NOTIFY_EX( TTN_NEEDTEXT, 0, memberFxn ),
当鼠标滑过工具栏的按钮时,按钮发出消息TTN_NEEDTEXT。
2。声明自己处理TTN_NEEDTEXT的函数,memberFxn是你自己的处理函数,声明格式必须如下:
BOOL CMyClass::memberFxn( UINT id, NMHDR * pTTTStruct, LRESULT * pResult );
3。当光标位于按钮之上时,memberFxn被调用,其中NMHDR就保存了大量的关于tooltip的信息——包括按钮ID,下面是一小段示例代码:
BOOL CMyFormView::OnToolTipNotify( UINT id, NMHDR * pNMHDR, LRESULT * pResult );
{
TOOLTIPTEXT *pTTT = (TOOLTIPTEXT *)pNMHDR;
UINT nID =pNMHDR->idFrom;
if (pTTT->uFlags & TTF_IDISHWND)
{
// idFrom is actually the HWND of the tool
nID = ::GetDlgCtrlID((HWND)nID);
if(nID)
{
pTTT->lpszText = MAKEINTRESOURCE(nID);
pTTT->hinst = AfxGetResourceHandle();
return(TRUE);
}
}
return(FALSE);
}
这种处理方法特别有用,当你的程序是基于对话框的时候,如果还想要添加工具栏,就需要自己树立tooltip
谢谢大家关注
我那样做了还是有问题,我的问题是:
怎样动态修改工具栏上按钮的提示
我想做的就是换掉主框架的工具栏的提示文字.但是将上面的消息填到cmframe里,相应的消息响应函数根本不执行.应该是它的默认的哪个函数执行了.
我对消息知道的很少.请问应该如何写
谢谢