Немного идей, на мой взгляд, только первый дает некоторую гарантию:
Если вы хотите быстро взглянуть на то, как легко читать код apk, а затем захватить APKAnalyser:
http://developer.sonymobile.com/knowledge-base/tool-guides/analyse-your-apks-with-apkanalyser/
Как уже отмечалось, это различное поведение! / resizable пахнет как ошибка (кто-то может рассмотреть вопрос о проблеме ;-)
. Короче (чем размер вручную) путь - это явно подойти к сцене на сцену:
primaryStage.setScene(scene);
primaryStage.setResizable(false);
primaryStage.sizeToScene();
Просто заметили, что это работает для jdk8, но не для jdk7.
Для удобства, обновление ошибки: исходный отчет, отправленный jewelsea, был закрыт как дубликат (в новых координатах) https://bugs.openjdk.java.net/browse/JDK- 8089008 - все еще открыт, прокомментирован как победный.
Хотя это не объяснение, оно решает проблему:
@Override
public void start(final Stage primaryStage) throws Exception {
final Dimension d = new Dimension(210, 110);
final Rectangle rectangle = new Rectangle(d.width, d.height, Color.POWDERBLUE);
final BorderPane pane = new BorderPane(rectangle);
pane.maxWidth(d.height);
pane.maxWidth(d.width);
final Scene scene = new Scene(pane, d.width, d.height);
primaryStage.setScene(scene);
primaryStage.setResizable(false);
primaryStage.setWidth(d.width);
primaryStage.setHeight(d.height);
primaryStage.show();
}
Ключ задает ширину и высоту Stage
в нужное время.
Попробуйте создать размер для размера, который вы хотите использовать frame- Dimension name = new Dimension(height,width)
, а затем установите размер размера в прямоугольник BorderPane и Scene. Вы хотите, чтобы все было одинакового размера?