B4J Question is there a FlowPane in b4j??

keirS

Well-Known Member
Licensed User
Longtime User
It's quite easy to add a Flowpane using JavaObject

B4X:
    Dim Button1 As Button
    Dim  Button2 As Button
    Dim Button3 As Button
    Dim Button4 As Button
    Dim  Button5 As Button
   
    Dim FlowPane As JavaObject
    Dim Orientation As JavaObject
    Dim Vgap As Double = 10
    Dim Hgap As Double = 10
   
    Orientation.InitializeStatic("javafx.geometry.Orientation")
    Button1.Initialize("Button")
    Button2.Initialize("Button")
    Button3.Initialize("Button")
    Button4.Initialize("Button")
    Button5.Initialize("Button")
    Button1.PrefWidth = 50
    Button2.PrefWidth = 50
    Button3.PrefWidth = 50
    Button4.PrefWidth = 50
    Button5.PrefWidth = 50
   
   
   
    FlowPane.InitializeNewInstance("javafx.scene.layout.FlowPane",Array(Orientation.GetField("VERTICAL")))
    FlowPane.RunMethod("setVgap",Array As Object (Vgap))
    FlowPane.RunMethod("setHgap",Array As Object (Hgap))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button1))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button2))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button3))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button4))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button5))
    MainForm.RootPane.AddNode(FlowPane,0,0,130,150)

For a horizontal FlowPane:
B4X:
FlowPane.InitializeNewInstance("javafx.scene.layout.FlowPane",Array(Orientation.GetField("VERTICAL")))

becomes

B4X:
FlowPane.InitializeNewInstance("javafx.scene.layout.FlowPane",Array(Orientation.GetField("HORIZONTAL")))
 
Upvote 0

Abd5max

New Member
It's quite easy to add a Flowpane using JavaObject

B4X:
    Dim Button1 As Button
    Dim  Button2 As Button
    Dim Button3 As Button
    Dim Button4 As Button
    Dim  Button5 As Button
  
    Dim FlowPane As JavaObject
    Dim Orientation As JavaObject
    Dim Vgap As Double = 10
    Dim Hgap As Double = 10
  
    Orientation.InitializeStatic("javafx.geometry.Orientation")
    Button1.Initialize("Button")
    Button2.Initialize("Button")
    Button3.Initialize("Button")
    Button4.Initialize("Button")
    Button5.Initialize("Button")
    Button1.PrefWidth = 50
    Button2.PrefWidth = 50
    Button3.PrefWidth = 50
    Button4.PrefWidth = 50
    Button5.PrefWidth = 50
  
  
  
    FlowPane.InitializeNewInstance("javafx.scene.layout.FlowPane",Array(Orientation.GetField("VERTICAL")))
    FlowPane.RunMethod("setVgap",Array As Object (Vgap))
    FlowPane.RunMethod("setHgap",Array As Object (Hgap))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button1))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button2))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button3))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button4))
    FlowPane.RunMethodJO("getChildren",Null).RunMethod("add",Array (Button5))
    MainForm.RootPane.AddNode(FlowPane,0,0,130,150)

For a horizontal FlowPane:
B4X:
FlowPane.InitializeNewInstance("javafx.scene.layout.FlowPane",Array(Orientation.GetField("VERTICAL")))

becomes

B4X:
FlowPane.InitializeNewInstance("javafx.scene.layout.FlowPane",Array(Orientation.GetField("HORIZONTAL")))

Thanks,
 
Upvote 0
Top