工具栏的制作暨CtoolbarEx类和CCustomizeDialog类使用说明

  工具栏的制作暨CtoolbarEx类和CCustomizeDialog类使用说明

*************http://download1.csdn.net/down3/20070607/07151208144.doc**************************

实现像IE浏览器工具栏按钮一样的外观效果,不但有按钮图标,而且可以显示文字。文字的位置有两种显示方式:图标下方和右边。自定义工具栏对话框类CCustomizeDialog有两种功能:(1)工具栏按钮的自定义;(2)图标按钮文字显示位置的选择。
在本例中这两个类要配合使用,所以对其中类作了比较小的修改,使CCustomizeDialog类使用的工具栏指针类型为CtoolbarEx。
一、CtoolbarEx类编程步骤:
1、 向工程中添加 ToolBarEx.cpp and ToolBarEx.h
2、  MainFrm.h 头文件中包含 ToolBarEx.h 头文件,用 CToolBarEx 类对象取代 CToolBar 对象。
    #include "ToolBarEx.h"
. . .
 
// CToolBar      m_wndToolBar;
CToolBarEx    m_wndToolBar;
3、  CMainFrame 类中,重载 OnCreate 函数(和框架中自动生成的一样,像本例中如果工具栏对象名不变,可以不用重写,只需加载自己的工具栏资源即可)
     if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||!m_wndToolBar.LoadToolBar(IDR_MYTOOLBAR))
      {
           TRACE0("Failed to create toolbar/n");
           return -1;      // fail to create
      }
二、CCustomizeDialog类编程步骤
因为 CToolBarEx 类头文件中包含CCustomizeDialog类头文件,所以MainFrm.h中不需要包含CCustomizeDialog类头文件而直接使用。
在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)函数种添加:
1、 //设置工具栏自定义对话框标题
m_wndToolBar.SetWindowText(_T("Standard"));
2、//使工具栏能够自定义
       m_wndToolBar.SetToolBarInfoForCustomization();
3、//删除初始化时没有选择的按钮
m_wndToolBar.GetToolBarCtrl().DeleteButton(m_wndToolBar.
CommandToIndex(ID_CUSTOMIZE));
4、// 为便于重置,标记出工具栏缺省状态
       m_wndToolBar.MarkDefaultState();
5、//保存工具栏状态
       m_wndToolBar.RestoreState();

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值