将工具栏附加到定义为浮出控件的工具栏按钮。 支持的平台:仅窗口 签名工 务 局: object.AttachToolbarToFlyout MenuGroupName, ToolbarName
返回值(RetVal)无返回值。 言论若要将新按钮创建为浮出控件,请使用该方法并将浮出控件按钮参数设置为 。将按钮创建为浮出控件按钮后,可以使用该方法将浮出控件工具栏附加到该按钮。AddToolBarButtonTrueAttachToolbarToFlyout 若要查询工具栏按钮以查看它是否为浮出控件按钮,请使用属性。若要查找附加到浮出控件工具栏按钮的工具栏,请使用属性。TypeFlyout 例子工 务 局: Sub Example_AttachToolbarToFlyout()
' This example uses MenuGroups to obtain a reference to the AutoCAD main menu.
' It then creates a new Toolbar(TestMenu) with a Toolbar button that will act
' as a flyout. It then sets the Flyout menu to an existing Toolbar menu.
' The Toolbar will automatically be displayed and will display the UCS menu
' as a flyout.
Dim currMenuGroup As acadMenuGroup
Dim newToolBar As AcadToolbar, newToolBarFlyoutButton As AcadToolbarItem
On Error GoTo ERRORTRAP
' Use MenuGroups property to obtain reference to main AutoCAD menu
Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item("ACAD")
' Create a new Toolbar in this group
Set newToolBar = currMenuGroup.Toolbars.Add("TestMenu")
' Add new button to TestMenu that will link to the Flyout menu
'
' * NOTE: Set the macro name to the name of the flyout toolbar because
' setting it to an empty string causes an error. The paremeter
' is actually ignored when the style is flyout, but must have any value other than "".
Set newToolBarFlyoutButton = newToolBar.AddToolbarButton(newToolBar.count + 1, "Flyout", "Flyout", "UCS", True)
' Link the existing toolbar "UCS" as the flyout for the new toolbar button
'
' * NOTE: To change the flyout, simply change the MenuGroup and Toolbar name below
newToolBarFlyoutButton.AttachToolbarToFlyout "ACAD", "UCS"
MsgBox "A new Toolbar with a flyout has been added to the AutoCAD menu system!"
Exit Sub
ERRORTRAP:
MsgBox "The following error has occurred: " & Err.Description
End Sub
Visual LISP: (vl-load-com)
(defun c:Example_AttachToolbarToFlyout()
;; This example uses MenuGroups to obtain a reference to the AutoCAD main menu.
;; It then creates a new Toolbar(TestMenu) with a Toolbar button that will act
;; as a flyout. It then sets the Flyout menu to an existing Toolbar menu.
;; The Toolbar will automatically be displayed and will display the UCS menu
;; as a flyout.
(setq acadObj (vlax-get-acad-object))
(setq currMenuGroup (vla-Item (vla-get-MenuGroups acadObj) 0))
;; Create a new Toolbar in this group
(setq newToolBar (vla-Add (vla-get-Toolbars currMenuGroup) "TestMenu"))
;; Add new button to TestMenu that will link to the Flyout menu
;;
;; * NOTE: Set the macro name to the name of the flyout toolbar because
;; setting it to an empty string causes an error. The paremeter
;; is actually ignored when the style is flyout, but must have any value other than "".
(setq newToolBarFlyoutButton (vla-AddToolbarButton newToolBar (1+ (vla-get-Count newToolBar)) "Flyout" "Flyout" "UCS" :vlax-true))
;; Link the existing toolbar "UCS" as the flyout for the new toolbar button
;;
;; * NOTE: To change the flyout, simply change the MenuGroup and Toolbar name below
(vla-AttachToolbarToFlyout newToolBarFlyoutButton "ACAD" "UCS")
(alert "A new Toolbar with a flyout has been added to the AutoCAD menu system!")
)
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-10-29 08:51
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.