当前位置:网站首页>MFC界面开发帮助文档:BCG用户定义的工具

MFC界面开发帮助文档:BCG用户定义的工具

2020-12-18 10:21:07 FILA6666

BCGControlBar ("Business Components Gallery ControlBar")是MFC扩展库,使您可以创建具有完全自定义选项(功能区、可自定义工具栏、菜单等)以及一组专业设计的丰富Microsoft Office和Microsoft Visual Studio的应用程序 GUI控件,例如图表、日历、网格、编辑器、甘特图和许多其他控件。 BCGControlBar库拥有500多个经过全面设计、测试和充分记录的MFC扩展类。 我们的组件可以轻松地集成到您的应用程序中,并为您节省数百个开发和调试时间。

BCGControlBar Library框架支持用户定义的工具,用户定义的工具是一个特殊的菜单项,它执行由用户指定的外部程序,用户定义的工具管理是框架实施的自定义过程的一部分。

如果启用,自定义对话框将自动插入 "Tools"属性页面,以下是 "Tools"页面的图片:

MFC界面开发类库BCGControlBar Pro for MFC帮助文档

要在应用程序中启用用户定义的工具,您需要执行以下步骤:

  1. 资源编辑器使用ID_TOOLS_ENTRY命令ID创建一个虚拟菜单项。
  2. (可选)您可以帮助用户选择工具(外部程序)的目录和参数,在资源编辑器中,创建两个弹出菜单ID_MENU_ARGS和ID_MENU_DIRS。
  3. 您必须告知框架应用程序中允许使用多少个用户定义的工具,工具的命令ID必须为连续数字。例如,在字符串表中定义ID_USER_TOOL1至ID_USER_TOOL10,以允许使用十个工具。
  4. 调用CBCGPWorkspace::EnableUserTools 以启用用户定义的工具。 将ID_TOOLS_ENTRY指定为虚拟命令ID,将ID_USER_TOOL1和ID_USER_TOOL10指定为工具命令的间隔,将RUNTIME_CLASS(CBCGPUserTool)指定为处理特定用户工具的类。ID_MENU_ARGS和ID_MENU_DIRS弹出菜单是可选的。

注意:框架将搜索ID_TOOLS_ENTRY并将其替换为实际的用户定义工具条目(如果有)。 如果要实现处理用户工具的自定义对象,请从CBCGPUserTool类派生一个类,并在调用CBCGPWorkspace::EnableUserTools时提供其运行时类信息。

如果需要在应用程序启动时预定义一些工具:

  1. 验证LoadFrame函数(它是CBCGPFrameWnd, CBCGPMDIFrameWnd  CBCGPOleIPFrameWnd类的成员)。
  2. 通过调用CBCGPWorkspace::GetUserToolsManager获得指向CBCGPUserToolsManager 对象的指针。
  3. 对于要创建的每个工具,请调用CBCGPUserToolsManager::CreateNewTool。 它返回一个指向CBCGPUserTool 对象的指针,并将新创建的用户工具添加到内部工具集合中。
  4. 对于每个工具,设置其文本标签和命令((CBCGPUserTool::m_strLabel, CBCGPUserTool::SetCommand), CBCGPUserTool 的默认实现自动从SetCommand程序中指定的位置检索可用图标。

注意:如果您从CBCGPUserTool派生自己的类并在CBCGPWorkspace :: EnableUserTools中提供了其运行时信息,则CreateNewTool将动态创建CBCGPUserTool派生的对象。

版权声明
本文为[FILA6666]所创,转载请带上原文链接,感谢
https://my.oschina.net/u/3992677/blog/4814829

随机推荐