This small JavaFX test application
import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.layout.BorderPane; import javafx.scene.paint.Color; import javafx.scene.shape.Rectangle; import javafx.stage.Stage; public class ApplicationWithNonResizableStage extends Application { public static void main(final String[] args) { launch(args); } @Override public void start(final Stage primaryStage) throws Exception { final Rectangle rectangle = new Rectangle(200, 100, Color.POWDERBLUE); final BorderPane pane = new BorderPane(rectangle); final Scene scene = new Scene(pane); primaryStage.setScene(scene); primaryStage.setResizable(false); primaryStage.show(); } }
produce a window with unwanted padding:
Removing the call primaryStage.setResizable(false)
also removes the effect:
What is going wrong?
As already commented, this different behaviour of !/resizable smells like a bug (somebody might consider filing an issue ;-)
A shorter (than sizing manually) way around is to explicitly fit the stage to the scene:
primaryStage.setScene(scene); primaryStage.setResizable(false); primaryStage.sizeToScene();
Just noticed that this works for jdk8, but not jdk7.
For convenience, a bug update: the original report filed by jewelsea was closed as a duplicate of (in new coordinates) https://bugs.openjdk.java.net/browse/JDK-8089008 - still open, commented to be win-only.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With