龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

VC制作类似于IE4的酷工具条

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
用VC制作工具条的方法很多,本文提供一种制作类似于IE4.0的工具条。能实现鼠标移上图标时,图标变为彩色,在工具条的位置,能停摆几种工具条。具体原理解释见步骤过程。 步骤如

用VC制作工具条的方法很多,本文提供一种制作类似于IE4.0的工具条。能实现鼠标移上图标时,图标变为彩色,在工具条的位置,能停摆几种工具条。具体原理解释见步骤过程。

步骤如下:

1.    运行AppWizard,选择Single Document,其余选缺省设置。

2.    点击Insert Resource ,加入两条Bitmap,定义为:IDB_COLDTOOLBAR和IDB_HOTTOOLBAR

3.    在CMainFrame中加入成员变量:

    CReBar      m_wndReBar;           
    CComboBoxEx m_wndAddress;
4.    修改CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)函数如下:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    CImageList img;
    CString str;

    if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
        return -1;
   
    if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD ¦ WS_VISIBLE ¦ CBRS_TOP
        ¦ CBRS_GRIPPER ¦ CBRS_TOOLTIPS ¦ CBRS_FLYBY ¦ CBRS_SIZE_DYNAMIC) )
    {
        TRACE0("Failed to create toolbar ");
        return -1;      // fail to create
    }

    if (!m_wndStatusBar.Create(this) ¦¦
        !m_wndStatusBar.SetIndicators(indicators,
          sizeof(indicators)/sizeof(UINT)))
    {
        TRACE0("Failed to create status bar ");
        return -1;      // fail to create
    }

m_wndToolBar.GetToolBarCtrl().SetButtonWidth(50, 150);    //设置工具条按钮大小
m_wndToolBar.GetToolBarCtrl().SetExtendedStyle(TBSTYLE_EX_DRAWDDARROWS);

//创建鼠标移上时的图标列表
    img.Create(IDB_HOTTOOLBAR, 22, 0, RGB(255, 0, 255));        m_wndToolBar.GetToolBarCtrl().SetHotImageList(&img);
    img.Detach();
//创建无焦点的图标列表
    img.Create(IDB_COLDTOOLBAR, 22, 0, RGB(255, 0, 255));
    m_wndToolBar.GetToolBarCtrl().SetImageList(&img);
    img.Detach();
    m_wndToolBar.ModifyStyle(0, TBSTYLE_FLAT ¦ TBSTYLE_TRANSPARENT);
//设置要显示的图标数,可根据实际情况修改
    m_wndToolBar.SetButtons(NULL, 9);

    //逐个设置图标按钮的属性
/*SetButtonInfo(( int nIndex, UINT nID, UINT nStyle, int iImage ); 参数如下:
  nIndex :  图标按钮的索引值
  nID:        图标按钮关联的资源号
  nStyle:    图标按钮的风格
                常用的几种如下:
            TBBS_BUTTON  标准按钮

精彩图集

赞助商链接