`

MFC中真彩工具条的制作方法

    博客分类:
  • C++
阅读更多

关于在VC中,真彩工具条的制作 方法:

转自:http://www.yesky.com/347/1797847.shtml

 

 

 最终效果图



  一直在寻找制作一个 24bit 及以上真彩工具条的简单有效方法,在各种VC站点都找到了很多有关这方面的文章和介绍,但是都存在一个不足的地方,介绍的不够详细,对初学者来说有点难度。最近终于有所发现,因此在这里将自己在制作真彩工具条方面的小经验介绍给大家,以期抛砖引玉。

  在这里将介绍两个重点的内容,一个是制作真彩工具条的图形工具Visual toolbar,另一个是在程序中显示工具条的类CtrueColorToolBar。有了这两个利器,几乎能够非常简单快速的制作任何真彩工具条。呵呵。 

  1、Visual Toolbar工具 

  Visual Toolbar 是一个工具条制作工具,也是目前唯一的这样的小工具,几乎是一直梦寐以求的超级好用的小工具。呵呵,当我第一次拿到这个东西的时候,只有一个感慨“太实用了!”。

  不知道大家以往作工具条的时候是怎样的,反正本人觉得很繁琐,程序员又不是美工,可是为了界面的pp,只好硬着头皮上了,不可能自己画那些图标,那就采用现成的吧,于是只能上网找一些好看得xp图标,然后用 photoshop 拼啊拼得,一不小心就得从来,费时费力。不知道别人都怎么做的,反正搜索了所有的制作真彩工具条的文章,都没有发现作者提供这样的信息或者方法。每次都很纳闷,当然也有一些作者提供了用ico图标作工具条的方法,不够相比这个有点复杂了。

  Visual Toolbar 的下载地址:(该地址已不可用,可在CSDN上下载)

http://visualtoolbar.126.com/

  界面非常简单,一看就能够理解和动手操作。只需要加入图标就能够生成。如图所示:



  简单吧,把你找到的一些pp的图标一个个加进去吧,就能自动合并成一个真彩工具条位图,而且还可以再拆分,重新组合,前后位置也可以从新排列。呵呵,不到一分钟,一个pp的bmp位图就完成了。而且还能同时生成normal图,hot图,和disable图。 

  有了这些位图,真彩工具条就算搞定了一半了。

  2、CtrueColorToolBar类 

  CtrueColorToolBar 类是一个专门加载真彩位图制作 toolbar 的很实用的类。

  这个类的下载地址是:http://www.codeproject.com/docking/TrueColorToolBar.asp

  确实不错,用这个类配合上面的工具,是一个很不错的组合。下面就用一个例子一步步来实现吧。系统 windwos2000+VC 6.0 + sp5。假设用 Visual toolbar 制作好的工具条如图:



  (1) 先建立一个基于MFC的SDI标准程序,没啥好说的,一路默认吧。 

  (2) 这个时候程序会默认生成一个工具条,如图:



  先这样放着吧,不理会。 

  (3)将CtrueColorToolBar类的两个文件拷贝到程序的目录下,并且在FileView中右键单击项目,加入CtrueColorToolBar类的两个文件,如图:



  将这两个文件导入进去。然后从新编译一下程序,这时候会发现多了一个CtrueColorToolBar类,这就是了。 

  (4) 下面将我们准备好的工具条位图加入到程序中吧,Visual Toolbar能同时生成normal位图和diable位图,假设如下面的所示:

  一个是normal图形,一个是disable图形: 
 


Normal 位图


Disable 位图

  先将这两个位图文件拷贝到程序的 res 目录下面,然后在 ResourceView 中单击右键,用 Import 导入这两个位图,程序会自动生成两个ID号,当然你可以修改ID为IDB_NORMAL和IDB_DISABLE。可以发现,这个例子想要的是7个 48×48 拼成的工具条。这个时候将用到系统自动生成的工具条了。 

  (5)找到 toolbar 资源下的 IDR_MAINFRAME 我需要的只是7个工具条按钮,这里多了几个,删除多余的吧。由于我们现在需要增加的是一个48×48的大小的按钮,所以还得修改按钮大小。双击其中任何一个按钮,修改大小为: 而每个按钮都默认了ID和操作,所以暂时先不管了。 

  (6)找到程序的CmainFrame框架类的成员变量m_wndToolBar,这东西就是工具条变量了,系统默认的是Ctoolbar类,将Ctoolbar修改成CtrueColorToolBar即可。 在程序的引用CtrueColorToolBar类的文件中包含其头文件,本例子是文件MainFrm.h的开头,增加一句: #include "TrueColorToolBar.h" 

  然后找到程序CmainFrame框架类的操作方法OnCreate函数。这里可是产生工具条的地方。增加这样一条语句: m_wndToolBar.LoadTrueColorToolBar( 48, IDB_NORMAL, IDB_NORMAL, IDB_DISABLED);

  3个参数分别代表的意义是:48表示工具条按钮大小是48×48,第二个是normal工具条位图ID,第三个是hot工具条位图ID,最后一个是disable工具条位图ID。 增加的位置你参考例子代码。 现在可以编译运行了,怎么用,真彩工具条出来了吧。 

  (7)最后,你可以和一般程序一样,对系统产生的toolbar资源下的IDR_MAINFRAME工具条的按钮进行设置,编写相应的响应函数即可。例子程序中还有两个位图也添加到资源中了,你可以修改上面m_wndToolBar.LoadTrueColorToolBar函数中后3个参数看看效果,就知道了。 

  3、说明 

  本文很详细的介绍了制作真彩工具条的方法,并推荐了两个工具。个人感觉这种方法比较快速简单。希望能够给初学者提供一些帮助,也希望能够抛砖引玉得到其它好的方法。

分享到:
评论

相关推荐

    制作真彩工具条

    "制作真彩工具条"这个主题涉及到的是如何在MFC(Microsoft Foundation Classes)框架下创建支持24位真彩色的工具条,以提供更加丰富、细腻的视觉效果。在MFC中,我们通常使用CToolBarCtrl或自定义的工具条类来实现这...

    VC制作真彩工具条(包含demo)

    总结一下,制作真彩工具条在VC++中主要涉及位图资源的管理和利用,MFC的CToolBar类,以及可能的图标与位图转换。提供的demo和小程序为我们提供了实践这些概念的实例,通过学习和分析这些代码,开发者可以更好地理解...

    VC制作动态真彩工具栏

    在VC++编程环境中,制作动态真彩工具栏是一项高级技巧,它可以为应用程序提供更加美观、交互性强的用户界面。动态真彩工具栏是指能够在运行时根据系统设置或用户选择显示不同色彩深度的工具栏,通常支持24位真彩色,...

    真彩工具条 真彩自绘菜单

    在提供的压缩包文件中,"VC6打开XP风格通用文件对话框---一步步制作真彩工具条---完美实现真彩自绘菜单"可能包含了示例代码、资源文件和详细的步骤指南,这些可以帮助你理解和实践上述过程。通过研究这些文件,你...

    VC++对话框真彩工具条制作

    7. **运行与测试**:编译并运行项目,真彩工具条应该会在对话框中正确显示。可以添加消息映射和处理函数,以响应按钮点击事件。 通过以上步骤,你可以在VC++中创建一个具有真彩色效果的工具条。这种自定义的对话框...

    商业编程-源码-本代码实现用CReBar制作动态真彩工具栏.zip

    本资源“商业编程-源码-本代码实现用CReBar制作动态真彩工具栏.zip”提供了一种使用CReBar类创建动态真彩工具栏的方法。下面我们将详细探讨CReBar类以及如何利用它来构建这种高级的工具栏。 CReBar是MFC(Microsoft...

    vc++制作工具栏程序

    在VC++编程环境中,制作工具栏程序是一项常见的任务,它涉及到Windows应用程序开发的基本概念和MFC(Microsoft Foundation Classes)库的使用。工具栏是用户界面的重要组成部分,它提供了快捷访问常用功能的方式,...

    商业编程-源码-一步步制作真彩工具条.zip

    "商业编程-源码-一步步制作真彩工具条.zip"这个资源似乎提供了一个详细的学习路径,教用户如何从零开始创建一个具有真彩色功能的工具条。这个过程不仅涵盖了基本的编程概念,还可能涉及到高级UI设计和技术实现。 ...

    Visual C++编程技巧精选集 光盘

    133.如何为工具栏添加动态真彩按钮 134.如何为工具栏按钮设置下拉箭头 135.如何为工具栏按钮添加下压效果 136.如何在工具栏上显示图标和文字 137.如何设置工具栏按钮的标题文字 138.如何设置工具栏按钮的提示信息 ...

Global site tag (gtag.js) - Google Analytics