1、 构造CToolBar类型的对象 CToolBar tool
2、 调用CreateEx()函数 tool.CreateEx(…)
3、 在资源编辑器中新建一个工具栏资源,假定ID为IDT_MYTOOL
4、 调用CToolBar的函数LoadToolBar(IDT_MYTOOL)
5、 (可选)如果想让工具条可以停靠,那么可以调用tool.EnableDocking(TRUE)
此后还必须调用父窗口的EnableDocking(TRUE)意思是父窗口可以被停靠。
6、 (可选)如果希望工具条可以隐藏和显示,需要调用ShowControlBar(CControlBar*
pcontrol)
至此,工具栏就添加完成了。
接下来我们希望让工具栏中的按钮可以在我们鼠标经过时显示提示信息,如图:
实现这个功能需要做以下工作:
1、 在cpp文件的OnInitDialog()中添加:tool.EnableToolTips(TRUE)或者在CreateEx()函数中设置CBRS_TOOLTIPS标识。
在头文件中添加
BOOL OnToolTipsNotify(UINT id,NMHDR * pNMHDR,LRESULT* pResult)
2、 在.Cpp文件添加如下红色代码:
BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
ON_NOTIFY_EX(TTN_NEEDTEXT,0,OnToolTipsNotify) //声明
工具栏提示 通知消息 ( 必须手动添加)
END_MESSAGE_MAP()
3、定义如下函数:
BOOLCMainFrame::OnToolTipsNotify(UINT id, NMHDR* pNMHDR,LRESULT* pResult)
{
TOOLTIPTEXT* pT =(TOOLTIPTEXT*)pNMHDR //将pNMHDR转换成TOOLTIPTEXT指针类型数据
UINTnID =pNMHDR->idFrom //获取工具条上按钮的ID
if(nID== IDC_XXX) //如果nID是希望获取的ID,那么就设置相应提示信息到TOOLTIPTEXT结构体的lpszText中。
{
pT->lpszText = "显示文字"
}
return FALSE
}
你这根本不是MFC编程,而是windows32编程,如果是MFC编程方式会方便一些你又在窗口过程(WinSunProc)中处理WM_CREATE消息当产生此消洞野首息时,用CreateWindow函数来创建按钮盒文本框关于如何用CreateWindow创建按钮盒文本框可以参考CreateWindow的使用,关键要设置第一个参数要设置正确的窗口类,系统为诸如按纳数脊喊钮、编辑框、文本框等通用控件预定义了窗口类,可查一些联机帮助。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)