更改 CATIA 中主动选择的项目的名称
Changing the name of an actively selected item in CATIA
我正在 CATIA 中处理一个项目,但在使用来自用户窗体的输入重命名实例名称时遇到了问题。当我 运行 这段代码时,我遇到了两个错误之一,要么是文件是只读的,要么是 属性.
使用不当
当我更改单个选定产品的属性然后在事后创建另一个产品时,我 运行 遇到了实例冲突。问题是第一个实例将在第一次宏为 运行 时采用第二个实例的 PartNumber,除非更改实例名称。解决这个问题的方法是什么?
Private Sub Assembly_Field_Update(oCurrentProduct As product)
Dim oCurrentTreeNode As product
Dim i As Integer
' Loop through every tree node for the current product
For i = 1 To oCurrentProduct.Products.Count
Set oCurrentTreeNode = oCurrentProduct.Products.Item(i)
If oCurrentTreeNode.Products.Count > 0 Then
Assembly_Field_Update oCurrentTreeNode
End If
Next
If oCurrentTreeNode.Name = CATIA.ActiveDocument.Selection.Item(1).Value.Name Then
On Error GoTo UserInputs
oCurrentTreeNode.ReferenceProduct.UserRefProperties.Item(1).Value = DESIGNER_INPUT.Text
oCurrentTreeNode.ReferenceProduct.UserRefProperties.Item(2).Value = BASE_NUMBER_INPUT
oCurrentTreeNode.ReferenceProduct.UserRefProperties.Item(3).Value = DASH_NUMBER_INPUT
oCurrentTreeNode.Name = BASE_NUMBER_INPUT & DASH_NUMBER_INPUT
实例名称由您的 Product Instance 对象的所属 Product 管理。
oCurrentTreeNode.Parent.Item(oCurrentTreeNode.Name).Name = BASE_NUMBER_INPUT & DASH_NUMBER_INPUT
实例产品的父级是所属产品的产品集合。
ReferenceProduct 的父级是 .CATProduct 文档对象。
如果您尝试重命名装配中的 "Component" 产品,情况可能会略有不同。
找到组件级实例的答案。
我正在 CATIA 中处理一个项目,但在使用来自用户窗体的输入重命名实例名称时遇到了问题。当我 运行 这段代码时,我遇到了两个错误之一,要么是文件是只读的,要么是 属性.
使用不当当我更改单个选定产品的属性然后在事后创建另一个产品时,我 运行 遇到了实例冲突。问题是第一个实例将在第一次宏为 运行 时采用第二个实例的 PartNumber,除非更改实例名称。解决这个问题的方法是什么?
Private Sub Assembly_Field_Update(oCurrentProduct As product)
Dim oCurrentTreeNode As product
Dim i As Integer
' Loop through every tree node for the current product
For i = 1 To oCurrentProduct.Products.Count
Set oCurrentTreeNode = oCurrentProduct.Products.Item(i)
If oCurrentTreeNode.Products.Count > 0 Then
Assembly_Field_Update oCurrentTreeNode
End If
Next
If oCurrentTreeNode.Name = CATIA.ActiveDocument.Selection.Item(1).Value.Name Then
On Error GoTo UserInputs
oCurrentTreeNode.ReferenceProduct.UserRefProperties.Item(1).Value = DESIGNER_INPUT.Text
oCurrentTreeNode.ReferenceProduct.UserRefProperties.Item(2).Value = BASE_NUMBER_INPUT
oCurrentTreeNode.ReferenceProduct.UserRefProperties.Item(3).Value = DASH_NUMBER_INPUT
oCurrentTreeNode.Name = BASE_NUMBER_INPUT & DASH_NUMBER_INPUT
实例名称由您的 Product Instance 对象的所属 Product 管理。
oCurrentTreeNode.Parent.Item(oCurrentTreeNode.Name).Name = BASE_NUMBER_INPUT & DASH_NUMBER_INPUT
实例产品的父级是所属产品的产品集合。
ReferenceProduct 的父级是 .CATProduct 文档对象。
如果您尝试重命名装配中的 "Component" 产品,情况可能会略有不同。
找到组件级实例的答案。