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

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
CBCGPShellBreadcrumb Explorer风格的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 ++类成员将添加到您的代码中。

猜你喜欢

转载自blog.csdn.net/xiaochuachua/article/details/83783965