我有一个宏,它使用以下代码在 SolidWorks 工程图中选择视图。
Set swDraw = swApp.ActiveDoc
Set swView = swDraw.GetFirstView
Set swView = swView.GetNextView
如何更改此选项以选择名为“ Drawing View1
”的视图?
我有一个宏,它使用以下代码在 SolidWorks 工程图中选择视图。
Set swDraw = swApp.ActiveDoc
Set swView = swDraw.GetFirstView
Set swView = swView.GetNextView
如何更改此选项以选择名为“ Drawing View1
”的视图?
假设您的swView
对象是类型iView
,您可以使用该GetName2
方法获取名称。因此,您可以使用GetNextView
您已经使用的方法枚举绘图中的每个视图,并检查名称是否匹配。
它并没有很好的记录,但是对于它的价值,该方法在枚举结束后GetNextView
返回一个空引用指针(例如在 vb 中)。nothing
Set swDraw = swApp.ActiveDoc
Set swView = swDraw.GetFirstView
Do While Not swView is Nothing
If swView.GetName2 = "Drawing View1" then Exit Do
Set swView = swView.GetNextView
Loop
IE
Dim instance As IModelDocExtension
value = instance.SelectByID2(Name, Type, X, Y, Z, Append, Mark, Callout, SelectOption)
Set Part = swApp.OpenDoc6(drawpathandfile, 3, 0, "", longstatus, longwarnings)
Dim swDrawing As Object
Set swDrawing = Part
Set Part = swApp.ActiveDoc
Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameLeft = 0
myModelView.FrameTop = 33
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized
swApp.ActivateDoc2 "Drawing View1", False, longstatus
Set Part = swApp.ActiveDoc
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized