JavaFX Controls in Default Window

Finally figured out how to get root pane of PSurfaceFX; the following works on my system (macOS). Note that control is in center of window because default layout pane is a StackPane and it defaults to CENTER alignment (can be changed by code).

JavaFX control in default Processing window:

import javafx.scene.canvas.Canvas;
import javafx.scene.control.Button;
import javafx.scene.layout.Pane;

Canvas canvas;
Pane pane;

void setup(){
  size(350,200,FX2D);
  surface.setTitle("JavaFX control in Default Wnd");
  canvas = (Canvas)surface.getNative();
  println(canvas);
  pane = (Pane)canvas.getParent();
  println(pane);
  Button btn = new Button("Push Me");
  pane.getChildren().add(btn);
}

Output:

1 Like