工具条[宝典]vc 完成对象栏上添加平面组合框控件

vc组合  时间:2021-03-03  阅读:()

作者刘涛

使用过OFFICE2000的人都知道它的界面尤其是菜单和工具条可谓是让人耳目一新。虽然Visual C++开发工具也提供了对工具条的支持但通常只是按纽的集合不能直接加入组合框等控件实现OFFICE2000风格的工具条。本实例针对其中的一个细节讲述了在Windows环境下用Visual C++6.0在工具条中加入平面组合框控件方法并实现了组合框的消息响应函数使得我们的程序看上去更加专业。程序编译运行后的效果如图一所示

图一、工具栏中的平面组合框控件

一、实现方法

用应用程序向导AppWizard生成一个基于单文档的工程Project 首先打开VC的工具条资源编辑器在工具条要加入组合框的地方加一个空按纽并将资源共享ID定义为ID_TOOL_ZOOM。

其次从面向对象的思想出发一个工具条作为一个整体应该封装为一个类组合框控件应该作为这个类的一个成员变量。因此用Visual C++的类向导CLASSWIZARD生成一个以CToolBar为基类的的新类CMainToolBar并加入成员变量CFlatComboBox m_combobox

CflatComboBox为平面组合框类。

在向工具条添加控件的过程中调用CToolBar: :GetItemID  函数来获取每个按钮的ID直到搜索到"空"按钮。 CToolBar: :GetItemID  函数的原型为 UINT GetItemID( intnIndex ) const参数nIndex为当前按钮在工具条中的索引号该索引号的基准值为"0"。找到"空"按钮后调用CToolBar: :SetButtonInfo  函数设置按钮的宽度信息。最后调用

CComBox: :Create   、 CcomBox: :AddString  等函数动态创建平面组合框控件下面的代码实现了平面组合框控件的动态创建

但是仅仅产生平面组合框是不够的必须实现组合框的消息响应函数才能方便地运用组合框。在Vsiaul C++中消息响应函数通常都是用类向导来实现但是此处由于组合框是用函数创建的所以必须亲自动手来写代码也并不麻烦与类向导生成的代码格式是一样的可以参照来写。下面代码定义了组合框的选择变化消息响应函数

二、编程步骤

1、启动Visual C++6.0生成一个单文档项目将该项目命名为"ToolBar"

2、通过资源编辑器新增一个工具按钮 "Caption"设置为空 ID资源标志符命名为ID_TOOL_ZOOM

3、启动Class Wizard从CToolBar派生一个新类CMainToolBar

4、在MainFrm.h文件中添加#include "MainToolBar.h"语句然后找到CToolBarm_wndToolBar语句用CMainToolBar代替CToolBar

5、添加代码编译运行程序。

三、程序代码

CYUN专注海外精品服务器资源 国庆钜惠 最低5折起 限量促销

国庆钜惠 最低5折起 限量促销CYUN专注海外精品服务器资源,主营香港CN2 GIA、美国CERA、美国高防服务器资源,实体公司,ISP/IDC资质齐全,客服配备齐全。本次针对国庆推出非常给力的促销活动,旗下所有平台同享,新老客户同享,限时限量,售完截止。活动截止时间:2021年10月9日官网地址:www.cyun.net参与机型:香港CN2 GIA云服务器、香港双程CN2云服...

UCloud 618活动:香港云服务器月付13元起;最高可购3年,AMD/Intel系列

ucloud6.18推出全球大促活动,针对新老用户(个人/企业)提供云服务器促销产品,其中最低配快杰云服务器月付5元起,中国香港快杰型云服务器月付13元起,最高可购3年,有AMD/Intel系列。当然这都是针对新用户的优惠。注意,UCloud全球有31个数据中心,29条专线,覆盖五大洲,基本上你想要的都能找到。注意:以上ucloud 618优惠都是新用户专享,老用户就随便看看!点击进入:uclou...

Sharktech:无限流量服务器丹佛,洛杉矶,荷兰$49/月起,1Gbps带宽哦!

鲨鱼机房(Sharktech)我们也叫它SK机房,是一家成立于2003年的老牌国外主机商,提供的产品包括独立服务器租用、VPS主机等,自营机房在美国洛杉矶、丹佛、芝加哥和荷兰阿姆斯特丹等,主打高防产品,独立服务器免费提供60Gbps/48Mpps攻击防御。机房提供1-10Gbps带宽不限流量服务器,最低丹佛/荷兰机房每月49美元起,洛杉矶机房最低59美元/月起。下面列出部分促销机型的配置信息。机房...

vc组合为你推荐
microcenter美国哪里可以买插头转换器杨紫别祝我生日快乐关于“致自己生日”的唯美句子有哪些?今日油条油条每周最多能吃多少mole.61.com摩尔庄园的米米号和密码我都忘了 只记得注册的邮箱 怎么办-_-mole.61.com摩尔庄园RK的秘密是什么?125xx.com高手指教下,www.fshxbxg.com这个域名值多少钱?bbs2.99nets.com这个"风情东南亚"网站有78kg.cn做网址又用bbs.风情东南亚.cn那么多此一举啊!广告法有那些广告法?还有广告那些广告词?广告法中华人民共和国广告法中,有哪些广告不得发布?梦遗姐我姐姐很漂亮,她24了,我才15,晚上我和他睡在一起,我经常挨遗精,咋办?
政务和公益机构域名注册管理中心 上海域名注册 域名主机空间 万网域名管理 域名抢注工具 ftp空间 荷兰服务器 googleapps 网络星期一 512au 12u机柜尺寸 dropbox网盘 php免费空间 骨干网络 免费mysql 华为云服务登录 阿里云手机官网 注册阿里云邮箱 免费网络空间 免费主页空间 更多