| 网站首页 | 模板 | 资料 | 源码 | 工具 | 开发 | 设计 | 安全 | 项目 | 网络 | 图片 | 系统 | 数据库 | 博客 | 会员中心 | 小说 | 
MYFTP 精品资料下载
网络学院
学习资料
源码模版
您现在的位置: 精品下载 >> 开发 >> .net >> 文章正文 用户登录 新用户注册
solidworks二次开发--10--从example中寻找            【字体:
solidworks二次开发--10--从example中寻找
作者:佚名    文章来源:不详    点击数:    更新时间:2007-10-7

solidworks的api帮助还是很全面的,里面有好多见简单而有效的程序,成天在api帮助里泡着,现在做程序的速度是越来越快。好像当年成天在excel中录制宏看代码的感觉。下面的程序是api帮助里的,它用来显示装配体的所有零部件。我给我的同事们用,他们觉得不错 :)。程序使用了一个简单的递归方法遍历了装配体。

Make All Assembly Components Visible Example (VB)

This example shows how to make all assembly components visible.

 

'---------------------------------------

'

' Preconditions: An assembly document is open.

'

' Postconditions: Any hidden assembly components are made visible.

'

'---------------------------------------

Option Explicit

Public Enum swComponentVisibilityState_e

    swComponentHidden = 0

    swComponentVisible = 1

End Enum

 

Sub TraverseComponent _

( _

    swComp As SldWorks.Component2, _

    nLevel As Long _

)

    Dim vChildCompArr               As Variant

    Dim vChildComp                  As Variant

    Dim swChildComp                 As SldWorks.Component2

    Dim swCompConfig                As SldWorks.Configuration

    Dim sPadStr                     As String

    Dim i                           As Long

    

    For i = 0 To nLevel - 1

        sPadStr = sPadStr + "  "

    Next i

    

    vChildCompArr = swComp.GetChildren

    For Each vChildComp In vChildCompArr

        Set swChildComp = vChildComp

        

        Debug.Print sPadStr & swChildComp.Name2 & " <" & swChildComp.ReferencedConfiguration & ">"

        

        If swComponentHidden = swChildComp.Visible Then

            swChildComp.Visible = swComponentVisible

        End If

        

        TraverseComponent swChildComp, nLevel + 1

    Next

End Sub

 

Sub main()

    Dim swApp                       As SldWorks.SldWorks

    Dim swModel                     As SldWorks.ModelDoc2

    Dim swAssy                      As SldWorks.AssemblyDoc

    Dim swConf                      As SldWorks.Configuration

    Dim swRootComp                  As SldWorks.Component2

    Dim bRet                        As Boolean

    Set swApp = Application.SldWorks

    Set swModel = swApp.ActiveDoc

    Set swConf = swModel.GetActiveConfiguration

    Set swRootComp = swConf.GetRootComponent

    Debug.Print "File = " & swModel.GetPathName

    TraverseComponent swRootComp, 1

End Sub




文章录入:chqnet    责任编辑:chqnet 
  • 上一篇文章:

  • 下一篇文章:
  • 最新热点 最新推荐 相关文章
    纯CSS 实现Tooltips效果
    Li的横向排列自适应宽度问题
    纯CSS Tooltips
    实例分析CSS属性Display与Vi
    用GoLive实现CSS+DIV之一
    Invert属性、Glow属性和Flip
    Links(HREF元素)的click方法
    CSS文本:ruby-align
    CSS文本:layout-grid-line
    CSS背景:background-color
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)