| 会员登录 立即注册
关注公众号

关注公众号拿干货

CATIA论坛公众号
加入联盟

扫微信(sakula)入联盟

CATIA软件
风格切换

catia教程

搜索

CATIA联盟论坛

[CATIA VBA] CATIA二次开发专题:如何从特征树选择一个对象

[复制链接]
CATIA运动仿真 发表于 2019-8-7 09:13:11 | 显示全部楼层 |阅读模式
CATIA运动仿真
2019-8-7 09:13:11 1141 0 看全部
       CATIA二次开发中通常要从特征树上选择一个对象,然后从选择对象中获取其属性等值。下面分享一段代码,从特征树选择一个对象,并获取选择对象的值。
代码如下:
Sub CATMain()
'遇到错误继续执行
On Error Resume Next


'获取CATIA应用程序
Dim CATIA As Object
Set CATIA = GetObject(, "CATIA.application")
'获得CATIA文档对象
Dim documents1 As Documents
Set documents1 = CATIA.Documents
'获得特征树的根
Dim productDocument1 As ProductDocument
Set productDocument1 = CATIA.ActiveDocument

'获得Selection 文档对象
Dim Selection 'As Selection
Set Selection = productDocument1.Selection

Dim product1 As Product
Set product1 = productDocument1.Product

'’获取根产品下的产品集合
Dim products1 As Products
Set products1 = product1.Products

'SelectElement2要求最终用户在活动文档的窗口中选择一个特性(在几何图形中或在规范树中)
Dim InputObjectType(0), Status, oFatheroProductPartNumber, N, i
InputObjectType(0) = "Product"
Status = Selection.SelectElement2(InputObjectType, "请选择一个零件", True)
If (Status = "Cancel") Then Exit Sub
'获取选择对象的值
Dim oProduct As Product
Set oProduct = Selection.Item(1).Value
End Sub
--------------------------------END---------------------------------

CATIA二次开发专题:如何从特征树选择一个对象63
说明:
(1)“测试表达式”可以是数值表达式或字符串表达式。
(2)“值表”与“测试表达式”的类型必需相同。
(3)当使用多个表达式组成“值表”时,表达式与表达式之间要用逗号隔开。
(4) “值表”由以下形式的表达式组成:

实例练习:
【例】设计一个程序,输入成绩,根据以下条件判断成绩的等级:
   90~100  等级A
   80~89   等级B
   70~79   等级C
   60~69   等级D
   60以下   等级E
(1)新建工程,在窗体中添加两个标签,一个文本框,一个标题为“显示等级”的命令按钮。
(2)为“显示等级”按钮的单击事件编写如下代码:
Private Sub Command1_Click()
    Dim Score As Integer
    Score = Val(Text1.Text)
    Select Case Score
        Case 90 To 100
            Label2.Caption = Score & "分为等级A"
        Case 80 To 89
            Label2.Caption = Score & "分为等级B"
        Case 70 To 79
            Label2.Caption = Score & "分为等级C"
        Case 60 To 69
            Label2.Caption = Score & "分为等级D"
        Case 0 To 59
            Label2.Caption = Score & "分为等级E"
        Case Else
            Label2.Caption = "成绩有误,请重新输入!"
    End Select
End Sub
CATIA论坛官方公众号
  • 您可能感兴趣
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 返回列表

查看:1141 | 回复:0

CATIA教程| CATIA视频| CATIA培训| CATIA下载| CATIA安装| CATIA插件| CATIA入门| CATIA V5| CATIA V6| CATIA论坛
联系电话:18982019507 地址:成都市青羊区二环路西一段155号天祥广场4栋1801
版权所有 ©软易达 •( 蜀ICP备14018086号 )Copyright © 2001-2013 Comsenz Inc. All Rights Reserved.   Powered by Discuz! X3.4
联盟微信客服:
silhouette023CATIA软件


CATIA技术群

微信公众号 CATIA微信公众号
“CATIA联盟”