MFC界面工具BCGControlBar入门:如何使用工具栏编辑器

article/2025/9/7 17:42:41

BCGControlBar ("Business Components Gallery ControlBar")是MFC扩展库,使您可以创建具有完全自定义选项(功能区、可自定义工具栏、菜单等)以及一组专业设计的丰富Microsoft Office和Microsoft Visual Studio的应用程序 GUI控件,例如图表、日历、网格、编辑器、甘特图和许多其他控件。

MFC界面开发必备库:

  • Xtreme Toolkit Pro:是屡获殊荣的VC界面库,是MFC开发中最全面界面控件套包,它提供了Windows开发所需要的11种主流的Visual C++ MFC控件,包括Command Bars、Controls、Chart Pro、Calendar、Docking Pane、Property Grid、Report Control、Shortcut Bar、Syntax Edit、Skin Framework 和Task Panel。
  • BCGControlBar:库拥有500多个经过全面设计、测试和充分记录的MFC扩展类。 我们的组件可以轻松地集成到您的应用程序中,并为您节省数百个开发和调试时间。

工具栏编辑器允许您轻松创建和管理应用程序工具栏。您可以添加工具栏按钮,为各种颜色模式和屏幕分辨率创建和编辑工具栏按钮图像,并将按钮与命令 ID 关联。

工具栏编辑器直接处理项目资源并修改 *.rc 和 resource.h 文件。它还会添加或修改 /res 文件夹中的一些文件(图像和 *.rc2 文件),因此,如果您使用源代码控制的项目,请不要忘记先查看资源。

工具栏编辑器应用程序名为 BCGToolbarEditor.exe 安装在 <安装路径>\BCGSoft\BCGControlBarPro\Designers 文件夹中。相应的快捷方式添加到“BCGCBPro”应用程序组。

工具栏编辑器支持 .svg、.bmp、ico 和 .png 格式的图像,颜色高达 32bpp,因此您可以快速将默认工具栏(16 色)调整为高质量的半透明外观。

菜单

  1. 文件
    • 打开... - 打开现有的 Visual Studio 项目(dsp、vcproj、vcxproj)。
    • 关闭 - 关闭正在编辑的项目。
    • 保存 - 保存正在编辑的项目。
    • 退出 - 关闭工具栏编辑器。
  2. 编辑:允许编辑当前选择的工具栏按钮图像。
  3. 查看:允许显示或隐藏应用程序工具栏、状态栏和停靠窗口。
  4. 帮助:显示工具栏编辑器版本信息和本开发指南。

停靠窗口

  1. 操作 - 显示当前上下文中可用操作的快捷方式。例如,如果没有打开的项目,则只能打开现有项目,或最近列表中的项目:
     

     

    工具栏 - 显示正在编辑的项目中可用的工具栏列表。使用停靠面板添加、删除和查找工具栏(嵌入工具栏上的相应按钮:
     



    如果单击“添加”按钮,则会出现“添加工具栏”对话框:
     



    - ID - 指定新的工具栏资源 ID。
    - 宽度/高度 - 指定工具栏图像列表中单个图像的尺寸。
    - 语言 - 允许创建本地化资源。

  2. 属性 - 显示当前选定对象(工具栏或工具栏按钮)的属性。

    以下屏幕截图说明了工具栏属性:



    - ID - 工具栏资源 ID
    - 图像热/冷/禁用 - 允许将现有图像列表 ID 分配给工具栏。
    - 宽度/高度 - 指定工具栏图像列表中的单个图像尺寸。更改这些属性会影响所有图像列表。

    以下屏幕截图说明了工具栏按钮的属性:



    ID - 工具栏按钮的命令 ID
    宽度/高度 - 指定父工具栏图像列表中的单个图像尺寸。更改这些属性会影响所有图像列表。
  3. 工具箱 - 包含可用于工具栏编辑的元素列表:
     



    按钮 - 选择此元素可将新按钮插入正在编辑的工具栏中。
    分隔符 - 选择此元素可在工具栏按钮之间插入分隔符。
    指针 - 选择此元素以选择正在编辑的工具栏上的按钮。
  4. 图像 - 显示当前所选按钮可用的图像列表(最多 4 个图像 - 默认、热、冷、禁用)。
     



    嵌入式工具栏允许在图像编辑器中编辑所选图像、从外部文件导入图像、将所选图像复制到剪贴板、从剪贴板粘贴图像并清除所选图像。

主视图

主视图显示在工具窗口中选择的工具栏。您可以通过单击工具栏按钮来编辑此工具栏。您可以使用拖放来排列现有按钮。
右键单击会弹出一个带有可用编辑选项的上下文菜单:
 


您可以定义和编辑带有热图像、冷图像和禁用图像的附加图像列表(每个图像列表都是可选的)。如果尚未创建图像列表,请单击所需图像列表对应的“设置 ID...”按钮。它会弹出一个对话框,允许定义一个新的图像列表 ID,或选择一个现有的 ID:
 



当一个新的图像列表被分配到工具栏时,您可以通过选择适当的单选按钮来选择它进行编辑:
 



此屏幕截图展示了一个带有禁用图像的新图像列表,其中为第三个按钮(保存)添加了禁用图像。没有添加带有热图像和冷图像的图像列表,因此它们对应的单选按钮被禁用。

图像编辑器

图像编辑器对话框 ,当您选择“编辑图片”出现图像窗格或在工具栏编辑器的上下文菜单 主视图



添加新图片

添加新的图片对话框出现时,你点击嵌入工具栏上的“导入图片”按钮图像窗格。导入的图像将替换图像列表中当前选定的图像。



单击“加载...”按钮加载现有文件(支持 .svg、.bmp、.ico 和 .png 图像)。单击“清除”按钮清除已加载的图像。如果加载的图像不是 32bpp,请从下拉颜色选择器中选择透明颜色。

一般工作流程

  1. 启动应用程序并打开现有的 Visual Studio 项目或单独的资源文件 (*.rc)。
  2. 要添加或删除工具栏,请单击工具栏窗格工具栏上的相应按钮。
  3. 选择要编辑的工具栏 -> 默认图像列表出现在主视图中
  4. 单击主视图上的“设置 ID...”按钮以创建包含热图像、冷图像和禁用图像的附加图像列表(这些图像列表是可选的)。
  5.  主视图上选择所需的单选按钮以编辑特定图像列表。
  6. 使用 任何工具箱,或上下文菜单,或 操作面板快捷键来插入或删除 工具栏按钮或分隔符。所有图像列表都会相应地更新。
  7. 主视图上选择一个工具栏按钮并使用拖放来更改按钮的位置。所有图像列表都会相应地更新。
  8. 使用“属性”窗格 将命令 ID 分配给 选定的工具栏按钮(ID 属性)。如果您更改Width或/和Height属性,则所有图像列表都将更新。
  9. 使用图像窗格编辑所选工具栏按钮的图像。
  10. 保存项目并编译应用程序以查看更改。如果您添加了新的图像列表,您可能需要在应用程序代码中指定它们的 ID。

http://chatgpt.dhexx.cn/article/3w2hGLKF.shtml

相关文章

MFC程序中使用QT开发界面

如果你有一个现成的MFC项目在做维护&#xff0c;但是你厌倦了使用MFC繁琐的操作来做界面美化&#xff0c;或者你需要在这个项目中用到QT里面好用的某些功能&#xff1b;亦或者是你需要使用某些只能在MFC中使用的组件&#xff0c;但是界面这部分已经用QT做好了。那么这篇文章可能…

一、MFC登陆界面

一、新建项目 打开VS2022——>创建新项目——>选择MFC应用&#xff0c;点击下一步——>修改项目名称和位置&#xff0c;点击创建——>修改应用程序类型、项目样式经典菜单选项 二、添加预处理指令 VS建议采用带_s的函数&#xff0c;如scanf_s、strcpy_s&#xff0…

MFC基础知识与课程设计思路

引言 本文致力于提供MFC的相关知识&#xff0c;以方便大家更好地认识MFC的使用方法。介绍将会分为以下几个部分&#xff1a;MFC初始文件的理解、MFC我们所使用的框架理解、MFC的进阶用法、MFC我在使用过程中遇到的问题及解决方法。 MFC初始文件的理解 MFC的初始文件中有两项文…

MFC添加程序关闭时时的提示界面

文章目录 MFC一.简介二.方法 MFC 一.简介 在应用程序退出的时候&#xff0c;不能点击叉直接退出&#xff0c;我们想添加一个退出提示。在点击叉后&#xff0c;弹出是否确定退出的界面&#xff0c;如下面的界面&#xff0c;具体操作往下看 二.方法 找到我们需要操作的主界面…

【MFC】模拟采集系统——界面设计(17)

功能介绍 启动界面 开始采集&#xff1a; PS&#xff1a;不涉及 数据保存&#xff0c;重现等功能 界面设计 界面分为三块&#xff1a;顶部黑条带关闭按钮、左边对话框&#xff0c;右边的主界面 资源&#xff1a; 顶部黑条 top.bmp 2* 29 &#xff08;宽 * 高 像素点&…

MFC界面设计入门篇

点击C里的MFC再点击MFCApplication&#xff0c;到下面改名字和路径&#xff0c;然后OK 然后点击Next&#xff0c; 选择single document&#xff0c;MFCstandard&#xff0c;简体中文&#xff0c;然后Finish 这时候可以先直接运行&#xff0c;看看工程的样子&#x…

最最简单的几个Mac终端命令

几个简单的Mac终端命令 目录切换相关 cd空格/ 回到根目录cd空格… &#xff08;或者 cd空格…/&#xff09; 回到上一级目录cd空格. 回到当前目录pwd 显示从根目录到当前目录的完整目录 vi操作相关 注意&#xff1a;vi操作的文件如果不存在&#xff0c;则先自动创建一个该名字…

Mac 终端基本命令

基本命令 1、列出文件 ls 参数 目录名 例: 看看驱动目录下有什么:ls /System/Library/Extensions 参数 -w 显示中文&#xff0c;-l 详细信息&#xff0c; -a 包括隐藏文件 2、转换目录 cd 例&#xff1a;想到驱动目录下溜达一圈 cd /System/Library/Extension…

10需要知道Mac终端命令

如果你想进入web开发领域&#xff0c;知道什么是终端&#xff0c;如何使用终端是非常有益的。在今天的文章中&#xff0c;我们将介绍Mac终端命令的10个必要知识&#xff01; &#x1f642; 什么是终端&#xff08;Terminal&#xff09; 终端最基本的用途是可以浏览计算机的文…

Mac终端命令

Mac电脑安装程序&#xff0c;打开允许任何来源的方法&#xff0c;在终端执行命令行即可。 打开命令&#xff1a;sudo spctl --master-disable 关闭命令&#xff1a;sudo spctl --master-enable Mac终端打开文件 1.打开文件夹的命令很简单&#xff0c;使用 open 文件夹…

Mac终端命令失效( command not found)/

ls vi vim 输入完来一句command not found xx 心哇凉哇凉的&#xff0c;心态都崩了。 guolianggldeMacBook-Pro ~ % cat zsh: command not found: cat guolianggldeMacBook-Pro ~ % ls zsh: command not found: ls guolianggldeMacBook-Pro ~ % mdfind zsh: command not fo…

MacOS系统终端常用命令大全

MacOS系统终端是使用mac电脑的小伙伴需要或多或少了解的一个应用。熟悉并掌握一些基本的常用命令可以帮助我们快速的解决一些日常问题&#xff0c;提高工作效率&#xff0c;下面让小编带大家了解一下吧&#xff01; 基本概念 命令的构成&#xff1a;Command Name、Options、Ar…

Mac终端 常用命令

OSX 的文件系统 OSX 采用的Unix文件系统&#xff0c;所有文件都挂在跟目录 / 下面&#xff0c;所以不在要有Windows 下的盘符概念。 你在桌面上看到的硬盘都挂在 /Volumes 下。 比如接上个叫做 USBHD的移动硬盘&#xff0c;桌面上会显示出一个硬盘图标&#xff0c;它实际在哪…

mac 终端 常用命令

文件目录 首先要清楚几个文件目录&#xff1a; " / " &#xff1a;根目录 " ~ " &#xff1a;用户主目录的缩写。例如当前用户为hello&#xff0c;那么" ~ "展开来就是&#xff1a;/Users/hello " . " &#xff1a;当前目录 "…

RANSAC原理及直线拟合(python动态图解)

一、简介 随机采样一致性&#xff08;Random Sample Consensus&#xff0c;RANSAC&#xff09;由斯坦福国际研究院的Fischler和Bolles于1981年首次提出[1]。RANSAC算法是一种随机参数估计迭代算法&#xff1b;从一组包含异常数据的样本数据集中&#xff0c;通过迭代的方式&…

RANSAC初识

RANSAC算法&#xff1a;随机抽样一致算法&#xff08;random sample consensus,RANSAC&#xff09; 一个简单的例子是从一组观测数据中找出合适的二维直线。假设观测数据中包含局内点和局外点&#xff0c;其中局内点近似的被直线所通过&#xff0c;而局外点远离于直线。简单的…

RANSAC算法详解

RANSAC算法详解 给定两个点p1与p2的坐标&#xff0c;确定这两点所构成的直线&#xff0c;要求对于输入的任意点p3&#xff0c;都可以判断它是否在该直线上。初中解析几何知识告诉我们&#xff0c;判断一个点在直线上&#xff0c;只需其与直线上任意两点点斜率都相同即可。实际…

Ransac拟合椭圆

一、Ransac算法介绍 RANSAC(RAndom SAmple Consensus,随机采样一致)最早是由Fischler和Bolles在SRI上提出用来解决LDP(Location Determination Proble)问题的&#xff0c;该算法是从一组含有“外点”(outliers)的数据中正确估计数学模型参数的迭代算法。“外点”一般指的的数据…

RANSAC算法

算法基本思想和流程 RANSAC是通过反复选择数据集去估计出模型&#xff0c;一直迭代到估计出认为比较好的模型。 具体的实现步骤可以分为以下几步&#xff1a; 选择出可以估计出模型的最小数据集&#xff1b;(对于直线拟合来说就是两个点&#xff0c;对于计算Homography矩阵就…

RANSAC迭代估计

RANSAC迭代估计 1. 定义2. 功能3. 流程4. 迭代次数推导5. 实现直线拟合 1. 定义 根据一组包含异常数据的样本数据集&#xff0c;计算出数据的数学模型参数&#xff0c;得到有效样本数据的算法 从一组含有“外点”(outliers)的数据中正确估计数学模型参数的迭代算法 “外点”一…