自定义部分 (.NET)
可以使用 CUI 托管 API 访问 CUIx 文件的用户界面和工作空间数据。
CUI 托管 API 中有两个特定对象用于访问 CUIx 文件的自定义部分:和 。该对象包含用于操作 AutoCAD 图形环境的菜单和界面数据,而该对象用于控制用户界面中元素的显示。工作空间信息可以存储在任何 CUIx 文件中,但只能从加载为主文件或企业自定义文件的 CUIx 文件进行访问。MenuGroupWorkspacesMenuGroupWorkspaces
MenuGroup 集合对象
可以通过集合对象下的集合访问各个元素(例如工具栏、弹出菜单和快捷方式)。集合没有公共构造函数,在自定义部分构造函数中分析 CUIx 文件时进行初始化。MenuGroup
以下对象是集合对象的一部分:MenuGroup
-
AcceleratorCollection- 可以按下以开始操作的快捷键组合
-
PanelSet- 用于在功能区上显示和组织面板的选项卡
-
DigitizerButtonGroupCollection- 用于数字化仪/平板电脑的传统可定制按钮定义
-
DoubleClickCollection- 在绘图区域中双击对象时执行的操作
-
ImageMenuCollection- 可显示的旧版图像标题菜单
-
LspFileCollection- 将 CUIx 文件加载到 AutoCAD 图形环境中时加载的 AutoLISP (LSP) 文件
-
MouseButtonGroupCollection- 鼠标上的可自定义按钮
-
PopMenuCollection- 弹出(下拉和快捷键)菜单,可以在菜单栏上显示,或者当用户在绘图区域中单击鼠标右键时
-
QuickAccessToolbarCollection- 可显示在功能区上方或下方的工具栏
-
ObjectTypeCollection- 用于控制在“快速特性”选项板或鼠标悬停工具提示上显示哪些对象类型和属性的设置
-
RibbonRoot- 功能区的顶层
-
ScreenMenuCollection- 可在屏幕菜单界面中显示的旧版屏幕菜单
-
TabletMenuCollection- 可用于配置数字化仪/平板电脑的传统平板电脑菜单
-
TemporaryOverrideCollection- 可以按住组合键以暂时覆盖一个或多个绘图或应用程序设置
-
ToolbarCollection- 经典工具栏,可沿 AutoCAD 应用程序窗口的边缘显示和停靠
-
ToolPanelCollection- 用于在功能区选项卡上组织和显示工具的面板
Workspaces 对象
自定义部分包含工作区的集合,可以通过索引条目或使用该方法指定工作区名称来访问这些工作区。工作区由快速访问工具栏、经典工具栏、弹出菜单、可停靠窗口以及功能区选项卡和面板组成,这些选项卡和面板使用以下对象和集合进行组织:IndexOfWorkspaceName()
-
WorkspaceQuickAccessToolbar
-
WorkspaceToolbarCollection
-
WorkspacePopMenuCollection
-
WorkspaceDockableWindowCollection
-
WSRibbonRoot
您可以使用以下方法之一引用工作区中的元素:
-
FindDockableWindow()- 根据提供的名称返回可停靠的窗口 () 对象WorkspaceDockableWindow
-
FindWorkspacePopMenu()- 根据提供的元素和菜单组名称返回弹出菜单 () 对象WorkspacePopMenu
-
FindWorkspaceToolbar()- 根据提供的工具栏和菜单组名称返回经典工具栏 () 对象WorkspaceToolbar
-
FindPanelSource()- 根据提供的自定义部分返回功能区面板源 () 对象RibbonPanelSource
-
FindTabReference()- 根据提供的菜单组名称和 ID 返回功能区选项卡引用 () 对象WSRibbonTabSourceReference
-
FindTabReference()- 根据提供的自定义部分返回功能区选项卡源 () 对象RibbonTabSource
- 向工作区添加元素
-
在主 CUIx 文件中创建的工具栏、弹出菜单和功能区选项卡需要先添加到工作空间中,然后才能显示在 AutoCAD 用户界面中。重新加载工作区时,添加到已显示在工作区中的工具栏、弹出菜单或功能区面板的新元素将自动显示。
以下代码演示如何将工具栏添加到工作区:
- VB.NET
-
Dim someToolbar As Toolbar = CustomizationSection.MenuGroup.Toolbars(4)
Dim wkToolbar As WorkspaceToolbar = New WorkspaceToolbar(parentWorksapce, someToolbar)
- C#
-
Toolbar someToolbar = CustomizationSection.MenuGroup.Toolbars[4];
WorkspaceToolbar wkToolbar = new WorkspaceToolbar(parentWorksapce, someToolbar);
将工具栏的属性设置为 True(或 1)以在工作区中显示。Display
- 工作区中的可停靠窗口
-
可停靠窗口的集合可从 访问。使用 and 属性停靠或浮动窗口。CustomizationSection.Workspaces.DockableWindowsDockFloatOrientation
对工作区的更改只有在应用程序中重新加载工作区后才会生效。重新启动应用程序不会重新加载工作区。这必须使用 WSCURRENT 系统变量或从状态栏上的“工作区切换”图标中重新选择工作区来完成。
|