Add ActiveX Tabs to Model View (VB.NET)
This example shows how to add two ActiveX tabs to a model view.
'----------------------------------------------------------
' Preconditions:
' 1. In the IDE:
' a. Reference Microsoft Calendar Control's ActiveX
' control file (click Project > Add Reference >
' Browse tab).
' b. Browse to:
' c:\Program Files\Microsoft Office\Office12\MSCAL.OCX
' and click OK.
' 2. Specified part document exists.
'
' Postconditions:
' 1. Two new tabs are added to the model view.
' 2. New tabs have Microsoft Calendar Controls,
' Calendar 1 and Calendar 2.
' 3. Model view is active.
' 4. To verify the ActiveX controls on the new tabs,
' interactively click each Calendar tab.
'
' 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 System
Imports MSACAL
Partial
Class SolidWorksMacro
Public
Sub Main()
Const calTabName1
As
String =
"Calendar 1"
Const
calTabName2 As
String =
"Calendar 2"
Dim
swModel As ModelDoc2
Dim swModViewMgr
As ModelViewManager
Dim calCtrl1
As MSACAL.Calendar
Dim calCtrl2
As MSACAL.Calendar
Dim fileName
As
String
Dim
errors As
Integer
Dim
warnings As
Integer
Dim
status As
Boolean
swApp = CreateObject("SldWorks.Application")
fileName = "c:\Program Files\SOLIDWORKS
Corp\SOLIDWORKS (3)\samples\tutorial\fillets\knob.sldprt"
swModel = swApp.OpenDoc6(fileName,
swDocumentTypes_e.swDocPART, swOpenDocOptions_e.swOpenDocOptions_Silent,
"", errors, warnings)
swModViewMgr = swModel.ModelViewManager
' Add the ActiveX control tabs
calCtrl1 = swModViewMgr.AddControl(calTabName1,
"MSCAL.Calendar",
"")
calCtrl2 = swModViewMgr.AddControl(calTabName2,
"MSCAL.Calendar",
"")
' Set the background colors of the ActiveX
control tabs
calCtrl1.BackColor = RGB(255, 0, 0)
'red
calCtrl2.BackColor = RGB(0, 0, 0)
'black
status = swModViewMgr.ActivateControlTab(calTabName1)
status = swModViewMgr.IsControlTabActive(calTabName1)
status = swModViewMgr.IsModelTabActive
' Switch back to model view
status = swModViewMgr.ActivateModelTab
End
Sub
'''
<summary>
''' The SldWorks swApp
variable is pre-assigned for you.
'''
</summary>
Public
swApp As SldWorks
End
Class