Code:
Option Strict off
Imports System
Imports NXOpen
Imports NXOpenUI
Imports NXOpen.UF
Imports NXOpen.Utilities
Imports System.IO
Module Test
Public sess As Session = Session.GetSession
Sub Main()
Dim wp As Part = sess.Parts.Work
Dim MForm As New Form1
Dim UndoM As Session.UndoMarkId = sess.SetUndoMark(Session.MarkVisibility.Visible, "-")
MForm.ShowDialog()
End Sub
Sub LW(Message As String)
sess.ListingWindow.Open()
sess.ListingWindow.WriteLine(Message)
End Sub
End Module
' Extra Klasse für alle globalen Variabeln
Public Class Ausdrücke
Public Shared theSession As NXOpen.Session = NXOpen.Session.GetSession()
Public Shared workPart As NXOpen.Part = theSession.Parts.Work
Public Shared Property exp_Breite As NXOpen.Expression = CType(workPart.Expressions.FindObject("Breite"), NXOpen.Expression)
End Class
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()>
Partial Class Form1
Inherits System.Windows.Forms.Form
'Das Formular überschreibt den Löschvorgang, um die Komponentenliste zu bereinigen.
<System.Diagnostics.DebuggerNonUserCode()>
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
Private components As System.ComponentModel.IContainer
<System.Diagnostics.DebuggerStepThrough()>
Private Sub InitializeComponent()
Dim theSession As NXOpen.Session = NXOpen.Session.GetSession()
Dim workPart As NXOpen.Part = theSession.Parts.Work
Me.TextBox_Breite = New System.Windows.Forms.TextBox()
Me.TextBox_Breite.Location = New System.Drawing.Point(11, 212)
Me.TextBox_Breite.Name = "TextBox_Breite"
Me.TextBox_Breite.Size = New System.Drawing.Size(100, 20)
Me.TextBox_Breite.TabIndex = 34
Me.TextBox_Breite.Text = CType(workPart.Expressions.FindObject("Breite"), NXOpen.Expression).Value.ToString
' Me.TextBox_Breite.Text = Ausdrücke.exp_Breite.Value.ToString
End Sub
Friend WithEvents TextBox_Breite As System.Windows.Forms.TextBox
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim theSession As NXOpen.Session = NXOpen.Session.GetSession()
Dim workPart As NXOpen.Part = theSession.Parts.Work
Dim markId1 As Session.UndoMarkId
' Einheiten
Dim Millimeter As NXOpen.Unit = CType(workPart.UnitCollection.FindObject("MilliMeter"), NXOpen.Unit)
Dim Grad As Unit = CType(workPart.UnitCollection.FindObject("Degrees"), Unit)
Dim Konst As Unit = Nothing
workPart.Expressions.EditWithUnits(Ausdrücke.exp_Breite, Millimeter, TextBox_Breite.Text) '(Ausdruck, Einheit, Textboxwert)
Dim nErrs1 As Integer
nErrs1 = theSession.UpdateManager.DoUpdate(markId1)
End Sub
End Class