vcmfc中使用工具栏控件详解

vcmfc中使用工具栏控件详解

ID:8812146

大小:297.50 KB

页数:9页

时间:2018-04-08

vcmfc中使用工具栏控件详解_第1页
vcmfc中使用工具栏控件详解_第2页
vcmfc中使用工具栏控件详解_第3页
vcmfc中使用工具栏控件详解_第4页
vcmfc中使用工具栏控件详解_第5页
资源描述:

《vcmfc中使用工具栏控件详解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、VCMFC工具栏(CToolBar)控件VCMFC工具栏(CToolBar)控件工具栏工具栏控件在控件面板里没有对应的选项(图标),但有一个工具栏控件类CToolBar,所以我们如果要创建一个工具栏控件并显示在窗口里的话,只能用代码来完成,事实上任何一种控件,都可以用代码创建,如CButton按钮类,现举一个用代码创建按钮控件并显示在窗口里的例子。CButton类的Create成员函数可以创建一个按钮控件,这个函数的格式如下:BOOLCButton::Create(     LPCTSTRlpszCaption,//按钮显示

2、的文本     DWORDdwStyle,//按钮样式     constRECT&rect,//按钮控件显示的区域(大小)相对于父窗口     CWnd*pParentWnd,//按钮的父窗口(按钮属于哪个窗口)     UINTnID//指明按钮控件ID号    );这个函数的第二个参数dwStyle是按钮控件的样式,也就是在可视化添加按钮控件时,右击按钮控件,选择属性,之后会弹出一个对话框,这个对话框有一个样式的选项,该参数即对应这个样式。好了,了解了上面这些我们就来动态创建一个按钮吧,首先在对应话类里添加一个按钮类成

3、员变量CButtonm_Button;然后在对话框编辑区里给对话框添加一个按钮控件(单击这个按钮创建按钮控件),然后添加这个按钮控件单击消息处理函数,并在函数添加以下语句: RECTButtonRect;//按钮控件显示的区域(大小)相对于父窗口 ButtonRect.left=10; ButtonRect.top=10; ButtonRect.right=80; ButtonRect.bottom=30; m_Button.Create("动态创建",WS_CHILD,ButtonRect,this,1115); m_Bu

4、tton.ShowWindow(SW_SHOW);//显示按钮控件知道了怎样动态创建按钮控件,我们就来创建工具栏控件。首先在对话类中添加一个CToolBar类成员变量CToolBarm_Toolbar;然后在对话类文件中定义工具栏命令ID#defineID_BUTTON1   501#defineID_BUTTON2   502#defineID_BUTTON3   503接着我们就要创建工具栏资源了,用于工具栏按钮的显示图片方法是进入ResourceView(资源视图选项卡),再随便选中一个选项,右击选择插入,在弹出的对话

5、框里选中Toolbar,点新建。接着创建三个按钮。如下图所示:第9页共9页VCMFC工具栏(CToolBar)控件好了,下面把三个按钮ID号,改成上面宏定义的ID号,如果要改变“天”字按钮,选中该按钮,然后回车键,就会弹出一个对话框,在ID项填入ID_BUTTON1,就可以了。接着依次把两个ID号改为ID_BUTTON2,ID_BUTOON3。在这个对话框里也可以改变工具栏按钮的大小。接下来我们样在对话框类的OnInitDialog函数里的所有代码之后,returnTRUE;之间添加以下语句:    m_Toolbar.Cr

6、eate(this);//创建工具栏控件    m_Toolbar.LoadToolBar(IDR_TOOLBAR1);//装载工具栏资源 CRectrect(100,100,200,200);// m_Toolbar.MoveWindow(rect);//移动工具栏在父窗口的位置 m_Toolbar.ShowWindow(SW_SHOW);//显示工具栏但这样显示工具栏不是很方便,特别是当窗口大小改变后,还要计算工具栏在窗口中的位置,有没有什么方法,可以根据窗口大小自动调整工具栏到合适的位置呢?答案是肯定的,Reposit

7、ionBars函数可以做到。实现方法如下,把上面的语句换成下面的: m_Toolbar.Create(this);//创建工具栏控件    m_Toolbar.LoadToolBar(IDR_TOOLBAR1);//装载工具栏资源 //该函数用于显示工具栏,并根据窗口大小自动调整工具栏的位置 RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0); 而响应工具栏按钮单击消息,跟前面介绍的添加按钮单击消息差不多,进入类向导,找到要添加的工具栏按钮ID

8、,添加COMMAND消息响应函数,如下图:第9页共9页VCMFC工具栏(CToolBar)控件工具栏按钮上显示真彩位图上面的例子有一个缺陷,那就是工具栏按钮显示的图形,不能超过256色,如果我想在工具栏按钮显示真彩位图,上面的方法显示是无法实现的,那这个功能是如何实现呢?SetImageL

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。