У меня есть следующий код, который максимизирует окно при нажатии кнопки максимизации (зеленый в строке заголовка). Однако он не возвращается к исходному размеру (900x600), когда он снова нажимается, когда он находится в максимизированном положении. Я вижу, что только левая сторона сжимается.Восстановить размер окна до исходного фиксированного размера в JavaFx 8
//set the original size
final Scene homeScene = new Scene(homePane,900,600);
...
primaryStage.maximizedProperty().addListener(new ChangeListener<Boolean>() {
@Override
public void changed(ObservableValue<? extends Boolean> ov, Boolean t, Boolean t1) {
primaryStage.setX(bounds.getMinX());
primaryStage.setY(bounds.getMinY());
primaryStage.setWidth(bounds.getWidth());
primaryStage.setHeight(bounds.getHeight());
}
});
Как вернуть исходное положение? Метод «Изменен» не запускается при повторном нажатии кнопки максимизации, иначе я бы установил исходный размер программным путем.
Этот код ведет себя точно так же, как и код, который я опубликовал. Он печатает true, когда я максимизирую окно, но ничего не печатаю, когда снова нажимаю кнопку максимизации. Я что-то пропустил. Я использую Normal Stage со всеми кнопками сверху. – SoulMan
В моем случае он также печатает 'false'. Какую версию Java вы используете, операционная система? – eckig
Java 8, Mac. Но это достаточно хорошо, если работает только для окон. Лемм попытается выиграть. – SoulMan