我正在使用 vbscript 中的多个用户表单。
我正在用户表单中创建一个对象并尝试在另一个用户表单中调用它。我尝试在两个用户表单中将该对象声明为 Public,但我仍然无法从另一个用户表单访问该对象。
期待您的帮助。
提前致谢。
用户表单1:
Public Inner_V1 As Object
Private Sub Inner_V1_CD_Click()
'Auswahlfenster ausblenden
Input_selection2.Hide
'Dim myDoc As Document
Set myDoc = CATIA.ActiveDocument
On Error Resume Next
Set ActivePart = CATIA.ActiveDocument.Part
If Err.Number <> 0 Then
On Error GoTo 0
Box = MsgBox("Das geöffnete Dokument ist kein CATPart!" + Chr(10) + "Das Makro wird beendet", vbExclamation, "Falscher Dateityp")
Unload Input_selection2
Exit Sub
End If
' Selektion definieren und leeren ----
Dim UserSel As Object
Set UserSel = myDoc.Selection
UserSel.Clear
'-------------------------------------
' User wählt die Fläche aus #############################################################################
' Auswahl festlegen -------------------
Dim Was1(0)
Was1(0) = "HybridShape"
'--------------------------------------
Dim Auswahl 'Wird für die SelectElement2 Methode benötigt (Auswahl durch User)
Auswahl = UserSel.SelectElement2(Was1, "Bitte die Fläche auswählen.", False)
If Auswahl = "Normal" Then
Set Inner_V1 = UserSel.Item(1).Value
Inner_V1.Value = Inner_V1.Name
Else
Unload Input_selection2
Exit Sub
End If
' Selektion freigeben -----------------------------------------------------
UserSel.Clear 'User-Auswahl löschen
'Auswahlfenster anzeigen
Input_selection2.Show
End Sub
用户表单2:
Private Sub Weiter_Click()
Set hybridBodies1 = part1.HybridBodies
Set hybridBody1 = hybridBodies1.Add()
hybridBody1.Name = "test"
Set reference1 = part1.CreateReferenceFromObject(Inner_V1)
Set reference2 = part1.CreateReferenceFromObject(Guide_curve)
Set sweep_v1 = hybridShapeFactory1.AddNewSweepExplicit(reference1, reference2)
Set reference3 = part1.CreateReferenceFromObject(Support_V)
hybridBody1.AppendHybridShape sweep_v1
End Sub
在这里,Inner_V1 是我需要从 Userform1 使用的对象。