为鼠标移动事件添加新的功能-在工具栏添加快捷按钮

 首先,插入一条新的工具栏,命名为IDR_MYTOOLBAR,然后分别创建两个图标,分别命名为:ID_SHOW_POS,ID_TEST,如下图所示:

为CMainFrame类添加一个protected的成员:CToolBar m_wndToolBar1,通过此变量将新建的工具栏加载到程序中,修改OnCreate函数,在原来已有的工具栏创建代码下面添加如下代码:

if (!m_wndToolBar1.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
  | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
  !m_wndToolBar1.LoadToolBar(IDR_MYTOOLBAR))
 {
  TRACE0("未能创建工具栏/n");
  return -1;      // 未能创建
 }

m_wndToolBar1.EnableDocking(CBRS_ALIGN_ANY); //该代码设置了工具栏可停靠的属性

DockControlBar(&m_wndToolBar1); //这是具体实现工具栏停靠的代码

在“视图”菜单中的“工具栏”可以控制工具栏的显示,但它的默认函数对自定义的工具栏不起作用,我们需要重载这个函数,将ID_VIEW_TOOLBAR的处理函数及其更新命令映射到CMainFrame类:

void CMainFrame::OnViewToolbar()
{
 // TODO: 在此添加命令处理程序代码
 m_wndToolBar.ShowWindow((m_wndToolBar.GetStyle()&WS_VISIBLE) == 0);
 m_wndToolBar1.ShowWindow((m_wndToolBar1.GetStyle()&WS_VISIBLE) == 0);
}

void CMainFrame::OnUpdateViewToolbar(CCmdUI *pCmdUI)
{
 // TODO: 在此添加命令更新用户界面处理程序代码
 pCmdUI->SetCheck((m_wndToolBar.GetStyle()&WS_VISIBLE) != 0);
}
编译之后,程序如下图所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值