【MFC】可调整按钮位置的工具栏
00. 目录
文章目录
- 00. 目录
- 01. 案例概述
- 02. 开发环境
- 03. 关键技术
- 04. 程序设计
- 05. 秘笈心法
- 06. 源码下载
- 07. 附录
01. 案例概述
本实例实现了工具栏上两个按钮互换位置的功能。运行程序如下图所示选择菜单“查看/改变按钮位置”,程序会将“新建”按钮和“保存”按钮进行位置调换,效果如下图所示。
改变之前
改变之后
02. 开发环境
系统环境:Windows 10
开发环境:Visual Studio 2019
03. 关键技术
本实例通过CToolBar 类的SetButtonInfo方法实现,SetButtonInfo方法用来设置工具栏按钮的相关信息,语法如下:
void SetButtonInfo( int nIndex, UINT nID, UINT nStyle, int iImage );
参数说明:nIndex 工具栏上按钮的位置nID 工具栏按钮在工程中的资源ID值nStyle 工具栏按钮的风格iImage 工具栏按钮的图片索引值
04. 程序设计
(1)新建基于单文档视图结构的应用程序。
(2)修改Menu资源IDR_MAINFRAME,在菜单“视图”下新建子菜单,设置ID属性为ID_CHANGE,设置Caption属性为“改变按钮位置”。
(3)在改变按钮位置菜单中添加按键事件处理程序,代码如下:
BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)ON_WM_CREATE()ON_COMMAND(ID_Change, &CMainFrame::OnChange)
END_MESSAGE_MAP()void CMainFrame::OnChange()
{// TODO: 在此添加命令处理程序代码UINT newId = 0;UINT oldId = 0;//获取IDnewId = m_wndToolBar.GetItemID(0);oldId = m_wndToolBar.GetItemID(1);m_wndToolBar.SetButtonInfo(0, oldId, 0, 1);m_wndToolBar.SetButtonInfo(1, newId, 0, 0);//重新绘制工具栏//m_wndToolBar.Invalidate();
}
05. 秘笈心法
改变工具栏按钮的好处
通过改变工具按钮的位置,来更加方便的进行操作,使最常用的按钮始终保持在最前面,还可以通过更改按钮位置来适应个人的喜好。
06. 源码下载
下载:【MFC】可调整按钮位置的工具栏.rar
07. 附录
参考: 《Visual C++从入门到精通(项目案例版)》
【MFC】可调整按钮位置的工具栏相关推荐
- 【MFC】固定按钮工具栏
00. 目录 文章目录 00. 目录 01. 案例概述 02. 开发环境 03. 关键技术 04. 程序设计 05. 秘笈心法 06. 源码下载 07. 附录 01. 案例概述 通过MFC向导创建的应 ...
- DevComponents.DotNetBar之SuperTabControl动态调整TABS页的位置,以动态调整按钮ButtonItem
本文是针对上一篇文章内容的补充,根据tabs页的实际宽度判断新增按钮位置是否调整,以适应展示的需要(原来问题:如果页数过多,最后个新增按钮就无法显示出来的问题,目前网上也没有相关介绍)这里分享一下过程 ...
- python如何调整按钮的位置_Python tkinter布局与按钮间距设置方式
Python tkinter布局与按钮间距设置方式 新建label与button,并设置位置(grid) import tkinter as tk root = tk.Tk() label = tk. ...
- swiper切换按钮位置改变_swiper插件自定义切换箭头按钮
不知道大家在使用swiper时有没有遇到这样一种需求,swiper插件自定义切换箭头按钮,话不多说,直接上gif. 也就是需要把左右切换的箭头移到容器的外面,自定义箭头的样式. 给swiper容器再加 ...
- 【MFC】具有提示功能的工具栏
00. 目录 文章目录 00. 目录 01. 案例概述 02. 开发环境 03. 关键技术 04. 程序设计 05. 秘笈心法 06. 源码下载 07. 附录 01. 案例概述 在文档\视图结构的应用 ...
- 【MFC】定义XP风格的工具栏
00. 目录 文章目录 00. 目录 01. 案例概述 02. 开发环境 03. 关键技术 04. 程序设计 05. 秘笈心法 06. 源码下载 07. 附录 01. 案例概述 网上的许多软件都具有漂 ...
- WPS简单五步操作修改图形并调整图形位置大小和旋转角度
在为大家介绍使用WPS如何操作修改图形之前,先了解下几个与之相关的问题: 问:WPS画好图怎么组合? 形状组合,可以使用快捷键,按SHIFT键,单击多个图形对象(或者使用选择窗格选择要组合的形状). ...
- java按钮位置_java窗口按钮位置设置
java窗口按钮位置设置 代码如下: package Day08; import java.awt.BorderLayout; import javax.swing.JButton; import j ...
- Matlab调整子图位置及大小(祛白边)+调整画布大小+添加总标题
子图显示问题: 不进行任何调整,默认画出的图为正方形,当需要画三个子图横排摆放时,效果如下: load diagblock_noise.matsubplot(1,3,1); pcolor(X4);ax ...
最新文章
- 怎么把线稿提取出来_抠线稿,三种提取漫画线稿的方式
- OKR案例分析,哪种类型的企业适合OKR?
- 操作和维护经常使用的命令
- python爬虫案例-陶瓷公司数据爬取
- 递归函数练习——累乘
- activity 生命周期_如何理解安卓activity的生命周期(on-create篇)?
- shell 杂记一(笨鸟)
- c语言程序 强制关机程序,怎样用C语言编写关机程序
- java数据库实体层封装_Java通过JDBC封装通用DAO层
- Transformers中的Beam Search高效实现
- Guitar Pro8(简称GTP8)打谱软件乐器乐谱的编排制作
- yolo算法部分简单理解
- 计算机网络工程毕业论文范文大全,网络工程专业毕业设计论文范文
- Word 2016 撰写论文(6): 取消/撤销 自动编号
- java 生成拼音_java工具-常用汉语转拼音库Pinyin4j 、tinypinyin、JPinyin
- SpringBoot + Spring Cloud +Vue 管理系统前端搭建(二、visual studio code开发前端项目
- JPA与Hibernate的区别
- fNIRS 公开数据集整理
- 专利代理机构代理专利流程
- 2D和3D的对比,不用犹豫,三维设计是行业未来必然趋势!
热门文章
- windows server 注意windows的temp目录
- activiti入门2流程引擎API和服务基础设施
- iis vue history 配置_Vue实战——vueRouter路由的添加与配置
- 企业级服务器固态硬盘,用户如何选择企业级SSD?_Intel服务器CPU_企业存储技术与评测-中关村在线...
- python 计时_python怎么实现计时
- Java黑皮书课后题第2章:*2.8(当前时间)程序清单2-7给出了显示当前格林尼治时间的程序。修改这个程序,提示用户输入相对于GMT的时区偏移量,显示在这个特定时区的时间
- python服务器查看文件更改记录,Python记录到同一文件,不同用户
- 华南理工大学和浙大计算机学院,浙江大学和华南理工大学的办学实力比较
- OpenCV计算机视觉实战(Python版)资源
- 每天一个linux命令-用户之间切换