BCGControlBar教程:如何将MFC控件的BCGControlBarBCGSuite添加到对话框中

本文介绍了如何在MFC对话框中添加BCGControlBar Pro控件。通过详细步骤,包括使用Visual Studio工具箱拖放控件,修改控件ID,以及使用MFC类向导或上下文菜单添加成员变量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

BCGControlBar Pro for MFC最新试用版下载请猛戳>>>

如果您正在使用我们的Windows窗体产品,那么将我们的控件添加到窗体是没有问题的:只需从Visual Studio工具箱中拖动所需的项目并将其放入窗体即可。在对话框中添加非标准控件需要一些步骤。在本演练中,我们将尝试描述如何执行此任务。如果您没有足够的Visual C ++ / MFC经验,请查看以下信息:

类名称描述如何添加
CBCGPAnalogClockCtrl使用嵌入式模拟时钟计控制。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPAnalogClockCtrl替换CStatic
CBCGPAnimCtrl控件显示一组具有指定帧速率的位图。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPAnimCtrl替换CStatic
CBCGPButton提供标准Windows按钮控件的扩展功能的控件。它包括新的外观和感觉样式,对齐文本的各种方法,组合图像和文本的能力,设置光标和工具提示。
  1. 在对话框中添加一个Button(1)
  2. 为此控件定义CButton成员变量(2)
  3. 用.H文件中的CBCGPButton替换CButton
CBCGPBrushButton刷子按钮来自常规按钮控件,并在左侧显示画笔预览。当用户单击此按钮时,将出现模态画笔编辑对话框。
  1. 在对话框中添加一个Button(1)
  2. 为此控件定义CButton成员变量(2)
  3. 用.H文件中的CBCGPBrushButton替换CButton
CBCGPBreadcrumb允许用户浏览分层数据的控件,例如应用程序定义的库或文件目录。可以将其与不一次显示整个项目树的树视图控件进行比较。
  1. 将Edit控件添加到对话框中(1)
  2. 为此控件定义CEdit成员变量(2)
  3. 用.H文件中的CBCGPBreadcrumb替换CEdit
CBCGPCalculator实现算术计算器功能的控件。
  1. 将不可见的空图片控件(占位符)添加到对话框编辑器(1)
  2. 将CBCGPCalculator成员变量添加到对话框类(例如,m_wndCalc)
  3. 在OnInitDialog中创建控件:m_wndCalc.CreateOnPlaceHolder(this,id_of_placeholder,id_of_control,style);
CBCGPCalendar实现日历控制功能的控件。控件可以一次显示几个月。根据控件大小自动计算显示的月数。
  1. 将不可见的空图片控件(占位符)添加到对话框编辑器(1)
  2. 将CBCGPCalendar成员变量添加到对话框类(例如,m_wndCalendar)
  3. 在OnInitDialog中创建控件:m_wndCalendar.CreateOnPlaceHolder(this,id_of_placeholder,id_of_control,style);
CBCGPChartCtrl封装Chart可视对象的控件,它覆盖控件的客户区域。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPChartCtrl替换CStatic
CBCGPCheckListBox具有视觉主题,标题和“固定”项目支持的扩展检查列表框控件
  1. 在对话框中添加一个列表框(1)。此控件应具有“owner-draw”和“has strings”样式。
  2. 为此控件定义CListBox成员变量(2)
  3. 用.H文件中的CBCGPCheckListBox替换CListBox
CBCGPCircularGaugeCtrl采用嵌入式圆形仪表控制。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPCircularGaugeCtrl替换CStatic
CBCGPCircularProgressIndicatorCtrl使用嵌入式循环进度指示器控制
  1. 在对话框中添加一个空的Picture控件(占位符)(1
  2. 为此控件定义CStatic成员变量(2
  3. 用.H文件中的CBCGPCircularProgressIndicatorCtrl替换CStatic
CBCGPColorBar办公风格的调色板。
  1. 将不可见的空图片控件(占位符)添加到对话框编辑器(1)
  2. 将CBCGPColorBar成员变量添加到对话框类(例如,m_wndColorBar)
  3. 在OnInitDialog中创建控件:m_wndColorBar.CreateOnPlaceHolder(this,id_of_placeholder,id_of_control,style);
CBCGPColorButton办公风格的颜色选择器。
  1. 在对话框中添加一个Button(1)
  2. 为此控件定义CButton成员变量(2)
  3. 用.H文件中的CBCGPColorButton替换CButton
CBCGPColorComboBox实现所有者绘制组合框的控件,其下拉列表包含左侧带有颜色框的颜色名称。
  1. 在对话框中添加一个组合框。此控件应具有“owner-draw”和“has strings”样式。
  2. 为此控件定义CComboBox成员变量(2)
  3. 用.H文件中的CBCGPColorComboBox替换CComboBox
CBCGPComboBox使用Visual Theme实现组合框控件绘制的控件。它还旨在支持“Aero Glass”上的绘图。
  1. 在对话框中添加一个组合框。此控件应具有“owner-draw”和“has strings”样式。
  2. 为此控件定义CComboBox成员变量(2)
  3. 用.H文件中的CBCGPComboBox替换CComboBox
CBCGPDateTimeCtrl日期/时间选择器
  1. 在对话框中添加一个Button(1)
  2. 为此控件定义CButton成员变量(2)
  3. 用.H文件中的CBCGPDateTimeCtrl替换CButton
CBCGPDurationCtrl持续时间控制
  1. 在对话框中添加一个Button(1)
  2. 为此控件定义CButton成员变量(2)
  3. 用.H文件中的CBCGPDurationCtrl替换CButton
CBCGPDiagramVisualContainerCtrl图容器控件
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPDiagramVisualContainerCtrl替换CStatic
CBCGPEdit使用浏览按钮和搜索框功能编辑控件。
  1. 将Edit控件添加到对话框中(1)
  2. 为此控件定义CEdit成员变量(2)
  3. 用.H文件中的CBCGPEdit替换CEdit
CBCGPEditCtrl高级编辑控件,具有语法突出显示,标记,轮廓(可折叠节点)和IntelliSense支持。
  1. 将不可见的空图片控件(占位符)添加到对话框编辑器(1)
  2. 将CBCGPEditCtrl成员变量添加到对话框类(例如,m_wndEdit)
  3. 在OnInitDialog中创建控件:m_wndEdit.CreateOnPlaceHolder(this,id_of_placeholder,id_of_control,style);
CBCGPEditListBox带有标题和“新建”,“删除”,“向上”和“向下”按钮的可编辑列表框
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPEditListBox替换CStatic
CBCGPFontComboBox字体选择器控件
  1. 在对话框中添加一个组合框
  2. 为此控件定义CComboBox成员变量(2)
  3. 用.H文件中的CBCGPFontComboBox替换CComboBox
CBCGPGridCtrl高级网格和报告控制
  1. 将不可见的空图片控件(占位符)添加到对话框编辑器(1)
  2. 将CBCGPGridCtrl成员变量添加到对话框类(例如,m_wndGrid)
  3. 在OnInitDialog中创建控件:m_wndGrid.CreateOnPlaceHolder(this,id_of_placeholder,id_of_control,style);
CBCGPHotSpotImageCtrl使用包含可点击的矩形区域(热点)的背景图像进行控制。当用户单击热点时,控件将带有BN_CLICKED代码的WM_COMMAND消息发送给父节点。
  1. 在对话框中添加一个Button(1)
  2. 为此控件定义CButton成员变量(2)
  3. 用.H文件中的CBCGPHotSpotImageCtrl替换CButton
CBCGPKnobCtrl控制模拟数字旋钮功能。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPKnobCtrl替换CStatic
CBCGPLinearGaugeCtrl采用嵌入式线性规控制。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPLinearGaugeCtrl替换CStatic
CBCGPLineStyleComboBox具有预定义线条样式集的组合框,例如实线,点或短划线。
  1. 在对话框中添加一个组合框(1)
  2. 为此控件定义CComboBox成员变量(2)
  3. 用.H文件中的CBCGPLineStyleComboBox替换CComboBox
CBCGPListBox具有视觉主题,标题和“fix”项目支持的扩展列表框控件
  1. 在对话框中添加一个列表框(1)。此控件应具有“owner-draw”和“has strings”样式。
  2. 为此控件定义CListBox成员变量(2)
  3. 用.H文件中的CBCGPListBox替换CListBox
CBCGPListCtrl具有视觉主题支持的扩展列表控件。
  1. 将List控件添加到对话框中(1)
  2. 为此控件定义CListCtrl成员变量(2)
  3. 用.H文件中的CBCGPListCtrl替换CListCtrl
CBCGPMaskEdit扩展编辑控件,能够根据指定的掩码验证键入的字符,并根据指定的模板显示它们。
  1. 将Edit控件添加到对话框中(1)
  2. 为此控件定义CEdit成员变量(2)
  3. 用.H文件中的CBCGPMaskEdit替换CEdit
CBCGPMenuButton提供按钮功能的控件,单击时显示弹出菜单,并将选定的命令重定向到父级。
  1. 在对话框中添加一个Button(1)
  2. 为此控件定义CButton成员变量(2)
  3. 用.H文件中的CBCGPMenuButton替换CButton
CBCGPProgressCtrl通过视觉主题支持扩展进度控制。
  1. 将Progress控件添加到对话框中(1)
  2. 为此控件定义CProgressCtrl成员变量(2)
  3. 用.H文件中的CBCGPProgressCtrl替换CProgressCtrl
CBCGPPropertySheetCtrl物业单控制。
  1. 将不可见的空图片控件(占位符)添加到对话框中(1)
  2. 将CBCGPPropertySheetCtrl成员变量添加到对话框类(例如,m_wndPropSheet)
  3. 将控件初始化代码添加到OnInitDialog:
m_wndPropSheet.m_bIsAutoDestroy = FALSE;
m_wndPropSheet.CreateOnPlaceHolder(this,id_of_placeholder,id_of_control,style);
CBCGPPropList具有嵌入式工具栏,搜索框,多级层次结构,项状态,命令和描述的高级属性网格控件。
  1. 将不可见的空图片控件(占位符)添加到对话框编辑器(1)
  2. 将CBCGPPropList成员变量添加到对话框类(例如,m_wndPropList)
  3. 在OnInitDialog中创建控件:m_wndPropList.CreateOnPlaceHolder(this,id_of_placeholder,id_of_control,style);
CBCGPRotationCtrl旋转控制源自“径向”菜单,适用于3D对象(例如3D中的图表)视图。
  1. 将空图片控件(占位符)添加到对话框中(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPRotationCtrl替换CStatic
CBCGPRadialMenu径向菜单控制
  1. 将空图片控件(占位符)添加到对话框中(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPRadialMenu替换CStatic
CBCGPScrollBar具有视觉主题支持的滚动条控件。
  1. 在对话框中添加滚动条(1)
  2. 为此控件定义CScrollBar成员变量(2)
  3. 将CScrollBar替换为.H文件中的CBCGPScrollBar
CBCGPShellBreadcrumbExplorer风格的shell breadcrumb控件。
  1. 验证您是否添加了对“InitShellManager();”的调用 在您的应用程序的开头InitInstance()
  2. 将Edit控件添加到对话框中(1)
  3. 为此控件定义CEdit成员变量(2)
  4. 用.H文件中的CBCGPShellBreadcrumb替换CEdit
CBCGPShellList资源管理器风格的shell列表控件。
  1. 验证您是否添加了对“InitShellManager();”的调用 在您的应用程序的开头InitInstance()
  2. 将List控件添加到对话框中(1)
  3. 为此控件定义CListCtrl成员变量(2)
  4. 将CListCtrl替换为.H文件中的CBCGPShellList
CBCGPShellTree资源管理器风格的shell树视图。
  1. 验证您是否添加了对“InitShellManager();”的调用 在您的应用程序的开头InitInstance()
  2. 将Tree控件添加到对话框中(1)
  3. 为此控件定义CTreeCtrl成员变量(2)
  4. 用.H文件中的CBCGPShellTree替换CTreeCtrl
CBCGPSpinButtonCtrl通过视觉主题支持旋转(“向上/向下”)控制。
  1. 向对话框添加旋转(“向上/向下”)控件(1)
  2. 为此控件定义CSpinButtonCtrl成员变量(2)
  3. 用.H文件中的CBCGPSpinButtonCtrl替换CSpinButtonCtrl
CBCGPSwitchCtrl“开/关”仪表具有不同的形状和视觉主题。
  1. 在对话框中添加一个空的Picture控件(占位符)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPSwitchCtrl替换CStatic
CBCGPTabWnd“高级”选项卡控件提供了允许创建选项卡式窗口小部件的功能。
  1. 将不可见的空图片控件(占位符)添加到对话框编辑器(1)
  2. 将CBCGPTabWnd成员变量添加到对话框类(例如,m_wndTab)
  3. 在OnInitDialog中创建控件:m_wndTab.CreateOnPlaceHolder(this,id_of_placeholder,id_of_control,style);
CBCGPTagCloudCtrl标签云控件是文本数据(“标签”)的可视化表示,每个标签的重要性以字体大小或颜色显示。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPTagCloudCtrl替换CStatic
CBCGPTreeCtrl具有视觉主题支持的扩展树控件。
  1. 将Tree控件添加到对话框中(1)
  2. 为此控件定义CTreeCtrl成员变量(2)
  3. 用.H文件中的CBCGPTreeCtrl替换CTreeCtrl
CBCGPTreeMapCtrl树图是层次结构的空间约束可视化。它使用大小和颜色显示叶节点的属性。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPTreeMapCtrl替换CStatic
CBCGPURLLinkBut​​ton超链接控制。
  1. 在对话框中添加一个Button(1)
  2. 为此控件定义CButton成员变量(2)
  3. 用.H文件中的CBCGPURLLinkBut​​ton替换CButton
CBCGPWinUITilesCtrl实现类似Windows 8的磁贴的控件。
  1. 在对话框中添加一个空的Picture控件(占位符)(1)
  2. 为此控件定义CStatic成员变量(2)
  3. 用.H文件中的CBCGPWinUITilesCtrl替换CStatic

如何将标准Windows控件添加到对话框:

  1. 打开对话框编辑器(在“Resource View”窗格中双击“Dialog”项(例如,IDD_ABOUT)或添加新的对话框/表单资源)。
  2. 显示Visual Studio工具箱(“View|Toolbox”或Ctrl + Alt + X)。
  3. 将控件从“工具箱”窗口拖放到对话框上的位置。
  4. 如果要添加空的Picture控件(占位符),则需要将控件ID从IDC_STATIC修改为某些“实际”值,例如IDC_CHART或IDC_TILES。否则,您无法为此控件添加成员变量。

如何为对话框控件添加成员变量:

如果您的工作环境是Visual C ++ 6.0,Visual Studio 2010或更高版本,最简单的方法是使用MFC类向导:

  1. 在对话框编辑器中选择控件。
  2. 启动MFC类向导(VC ++ 6.0中的“View | ClassWizard”或VS 2010-2017中的“Project | Class Wizard”)。
  3. 切换到“Member Variables”选项卡。
  4. 按ID选择所需的控件。
  5. 单击“Add Variable”按钮。
  6. 输入成员名称,选择“Control”类别,然后单击“OK”按钮。与控件关联的新C ++类成员将添加到您的代码中。

在其他Visual Studios版本(例如Visual Studio 2005或2008)中,您可以使用“Add Variable”上下文菜单项:

  1. 在“Dialog Editor”中右键单击控件
  2. 选择“Add Variable...”菜单项 - 出现“添加成员变量”向导。
  3. 输入变量名称,选择“Control”类别,然后单击“Finish”按钮。与控件关联的新C ++类成员将添加到您的代码中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值