#Region Project Attributes
#MainFormWidth: 1024
#MainFormHeight: 600
#End Region
Sub Process_Globals
Private fx As JFX
Private MainForm As Form
Private xui As XUI
Private WHRatio As Double
Dim WidthChanged,HeightChanged As Boolean
End Sub
Sub AppStart (Form1 As Form, Args() As String)
MainForm = Form1
MainForm.RootPane.LoadLayout("Layout1")
MainForm.Show
WHRatio = MainForm.Width / MainForm.Height
Dim Stage As JavaObject = MainForm.As(JavaObject).GetField("stage")
Dim widthProperty As JavaObject = Stage.RunMethod("widthProperty",Null)
Dim HeightProperty As JavaObject = Stage.RunMethod("heightProperty",Null)
Dim Listener As Object = widthProperty.CreateEvent("javafx.beans.value.ChangeListener","WidthChanged","")
widthProperty.RunMethod("addListener",Array(Listener))
Dim Listener As Object = HeightProperty.CreateEvent("javafx.beans.value.ChangeListener","HeightChanged","")
HeightProperty.RunMethod("addListener",Array(Listener))
End Sub
Private Sub WidthChanged_Event(MethodName As String,Args() As Object) As Object
If HeightChanged Then
HeightChanged = False
Return
End If
MainForm.WindowHeight = MainForm.WindowWidth / WHRatio
WidthChanged = True
End Sub
Private Sub HeightChanged_Event(MethodName As String,Args() As Object) As Object
If WidthChanged Then
WidthChanged = False
Return
End If
MainForm.WindowWidth = MainForm.WindowHeight * WHRatio
HeightChanged = True
End Sub