Split FeatureManager Design Tree and Position Splitter (VB.NET)
This example shows how:
* to split a FeatureManager design tree.
* add a tab to one of the FeatureManager design trees.
* change the location of the split panel bar (splitter).
'----------------------------------------------------------
' Preconditions:
' 1. In the IDE, reference Microsoft Calendar Control's ActiveX
' control file:
' a. Click Project > Add
Reference > Browse tab.
' b. Browse to:
' c:\Program Files\Microsoft Office\Office12\MSCAL.OCX
' and click OK.
' 2. Specified part document and bitmap exist.
'
' Postconditions:
' 1. FeatureManager design tree is split, and the splitter is
' below the FeatureManager design tree to which the
' tab was added. Drag the splitter to verify.
' 2. Interactively close the part document.
' 3. Interactively set test to 1 in the macro.
' 4. Rerun the macro.
' 5. FeatureManager design tree is split, and the splitter is
' above the FeatureManager design tree to which the
' tab was added. Drag the splitter to verify.
'
' NOTE: Because the part document is used elsewhere,
' do not save any changes when closing it.
'----------------------------------------------------------
Imports
SolidWorks.Interop.sldworks
Imports
SolidWorks.Interop.swconst
Imports
MSACAL
Partial
Class
SolidWorksMacro
Public
Sub Main()
Const
iconSmall As
String =
"C:\Program Files\SOLIDWORKS
Corp\SOLIDWORKS\data\user macro icons\button.bmp"
Dim
swModel As
ModelDoc2
Dim
swModViewMgr As
ModelViewManager
Dim
swFeatMgrTabTop As
FeatMgrView
Dim
swFeatMgrTabBtm As
FeatMgrView
Dim
ctrlTop As
MSACAL.Calendar
Dim
ctrlBtm As
MSACAL.Calendar
Dim
fileName As
String
Dim
errors As
Integer
Dim
warnings As
Integer
Dim
activePane As
Integer
Dim
test As
Integer
fileName =
"c:\Program Files\SOLIDWORKS
Corp\SOLIDWORKS\samples\tutorial\fillets\knob.sldprt"
swModel = swApp.OpenDoc6(fileName,
swDocumentTypes_e.swDocPART, swOpenDocOptions_e.swOpenDocOptions_Silent,
"",
errors, warnings)
swModViewMgr = swModel.ModelViewManager
test = 0
If
test = 0 Then
'
FeatureManager design tree is split, and the splitter is
'
below the FeatureManager design tree to which the
'
tab was added
swFeatMgrTabTop = swModViewMgr.CreateFeatureMgrControl2(iconSmall,
"MSCAL.Calendar",
"",
"Top tab ToolTip",
swFeatMgrPane_e.swFeatMgrPaneTop)
ctrlTop = swFeatMgrTabTop.GetControl
swModel.FeatureManagerSplitterPosition = 0.0#
activePane = swFeatMgrTabTop.ActivateView
Else
'
FeatureManager design tree is split, and the splitter is
'
above the FeatureManager design tree to which the
'
tab was added
swFeatMgrTabBtm = swModViewMgr.CreateFeatureMgrControl2(iconSmall,
"MSCAL.Calendar",
"",
"Bottom tab ToolTip",
swFeatMgrPane_e.swFeatMgrPaneBottom)
ctrlBtm = swFeatMgrTabBtm.GetControl
swModel.FeatureManagerSplitterPosition = 1.0#
activePane = swFeatMgrTabBtm.ActivateView
End
If
End
Sub
'''
<summary>
'''
The SldWorks swApp variable is pre-assigned for you.
'''
</summary>
Public
swApp As
SldWorks
End
Class