VC++打造漂亮的工具条

原创 2007年11月19日 13:20:00
 将要达到的效果如图:
1、真彩色按钮
2、按钮旁边加下拉箭头
 
 
下面开始首先由visual toolbar(实用的小工具,网上由破解版)制作自己的toolbar,很方便,自动生成normal、hot和disable状态的toolbar。将制作好的Toolbar放到res目录里面,然后引入的工程(本例建立的工程名为test,加入的toolbar BMPde的ID为IDB_TEST_HOT和IDB_TEST_DISABLED,仅用了两个状态的toolbar)中来。

下面介绍需要用到的类,CTrueColorToolBar,这个类是网上搜集的一个类。将这个类引入到工程中来。具体内容如下:
TrueColorToolBar.h

 

 
TrueColorToolBar.cpp
 
 
第一步:换掉原来的工具条
1、在MainFrm.h加入头文件TrueColorToolBar.h
#include "TrueColorToolbar.h"
2、在MainFrame类中加入成员变量
CTrueColorToolBar m_wndTCToolbar;
3、在资源中插入一个Toolbar,每个按钮的大小要与建立工具条位图时每个按钮的大小一致,个数要一样。ID设为ID_TOOLBAR_TEST。
 
4、修改CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)函数:
替换其中的m_wndToolBar为m_wndTCToolbar
将m_wndTCToolbar.LoadToolBar(IDR_MAINFRAME)中的IDR_MAINFRAME换为ID_TOOLBAR_TEST
5、调用CTrueColorToolBar类的成员函数,加载真彩工具条的位图。
m_wndTCToolbar.LoadTrueColorToolBar( 32, IDB_TEST_HOT, IDB_TEST_HOT, IDB_TEST_DISABLED);
第一个参数为按钮的边长,后面依次为normal、hot和disable状态的位图。
6、将按钮关联到菜单,修改按钮ID与菜单上对应项心相同即可。本例中的ID依次设置为ID_FILE_OPEN,ID_FILE_SAVE,ID_TEST_BACK,ID_TEST_STOP,ID_TEST_FORWARD,ID_TEST_HELP,后面四个分别在菜单中建立对应项并加响应函数。如图:
 
看一下效果吧,真彩工具条已经作成了:
 
第二步:制作下拉箭头
1、在资源中新建一个menu,ID设为IDR_TEST_MENU,这个菜单将是显示在下拉箭头下的那个菜单。如图建立一个:
 

2、在CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)中加入下面一句:
m_wndTCToolbar.AddDropDownButton(&m_wndTCToolbar,ID_FILE_OPEN,IDR_TEST_MENU);

好了,大功告成。


结束。。。。。。。。。。 

VC++打造漂亮的工具条 .

/------------------------------- 看正文前注意:在vs2008要修改下CTrueColorToolBar中的OnToolbarDropDown(NMTOOLBAR* ...
  • abcdef8c
  • abcdef8c
  • 2012年06月13日 19:44
  • 5966

VC++下关于工具条的设计

在VC++下实现高彩色工具条   引言   一些Windows系统自带程序如资源管理器、Internet Explorer等程序的工具条看上去和其他一些程序的工具条不太一样,在颜色上要漂亮许多。...
  • chinawash
  • chinawash
  • 2006年06月25日 17:19
  • 1010

vc对话框中添加工具栏

(转http://www.programfan.com/blog/article.asp?id=27914)1、添加工具栏资源ID为IDR_TOOLBAR2、在对话框的类定义中加:CToolBar m...
  • ivymuse
  • ivymuse
  • 2010年08月05日 21:26
  • 883

串口调试者C#源码

经常调试串口程序,使用的“串口调试助手V2.2”。这个程序简单,专业。实际使用范围比较广,我在使用过程中发现几个问题。1、只能支持4个串口。不知道我说的对不对,但是在我电脑上只能显示4个。我在本机调试...
  • zhjlz
  • zhjlz
  • 2008年07月05日 10:17
  • 1988

c#中工具条的使用

在C#中使用工具条一开始就一直想着工具条怎么和菜单绑定起来使用,菜单上定义好的功能,工具条是直接绑定,限于这种思维就在那里找方法,在网上找资料,可是最好还是没有实现这个办法。C#本来提供的机制就是,在...
  • guest78978
  • guest78978
  • 2006年05月09日 15:16
  • 3552

VC 创建具有提示功能的工具栏

类CToolBar的对象是带有一行位图按钮和可选分隔线的控件条。这些按钮可以像普通按钮、核选按钮或单选按钮那样动作。 Visual C++提供了两种创建一个工具条的方法。要使用资源编辑器(Resou...
  • tanyouliang
  • tanyouliang
  • 2013年05月08日 14:56
  • 1369

VC++ 对话框创建显示Toolbar,并加载图标!

.h CToolBar m_ToolBar; CImageList m_Imagelist; afx_msg BOOL OnToolTipText(UINT nID, NMHDR* pN...
  • shen_wei
  • shen_wei
  • 2011年12月20日 17:11
  • 2362

打造漂亮的tooltip

保守的说,HTML自带的tooltip并不可靠,首先样式不漂亮
  • LuckyFanny520
  • LuckyFanny520
  • 2014年08月11日 11:55
  • 769

MFC界面美化之工具栏(1)

一、工具栏的美化 (一)工具栏显示文字 文档/视图默认的工具栏上只有图标而没有文字。可以将文字在图标下方显示,也可以将文字在图标右侧显示。 1 在图标下方显示文字 在CMainFrame::O...
  • hou09tian
  • hou09tian
  • 2016年12月12日 11:17
  • 820

VC++中添加工具栏和状态栏

VC++中添加工具栏方法 1、 使用VC生成的工具栏 通过VC资源窗口insert一个工具栏资源IDR_TOOLBAR1,并进行编辑 为对话框类添加一个工具栏变量        CToolBa...
  • dancewyr
  • dancewyr
  • 2012年06月18日 13:08
  • 6385
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VC++打造漂亮的工具条
举报原因:
原因补充:

(最多只允许输入30个字)