JavaFX. Переменная в FXML

345
07 марта 2017, 14:46

Доброго времени суток!

Начал изучать JavaFX,и не могу разобраться в работе переменных в FXML документе. Допустим, мне нужно получить размер экрана. В главном классе я бы прописал так:

Dimension sSize = Toolkit.getDefaultToolkit().getScreenSize(); int height = sSize.height; int width = sSize.width;

Но как мне сделать это в FXML документе?

Можно как-то передать переменную из класса в FXML документ, или как-то нужно получить её в самом документе?

Answer 1

Можно передать данные в FXML файл при помощи DI

В контролере который отвечает за представление можно получить элемен по ID

<VBox xmlns="http://javafx.com/javafx/8.0.112" xmlns:fx="http://javafx.com/fxml/1" fx:controller="dev.gva.ui.MainController">
   <Label fx:id="label1"></Label> <!--Дать ИД элементу который хочешь получить-->
</VBox>

В контроллере пожно получить элемен :

@FXML
public Label label1; // Имя переменной должно совпадать с ИД

Пример:

public class MainController implements Initializable{
    @FXML
    public Label label1;
    @Override
    public void initialize(URL location, ResourceBundle resources) {
       Rectangle2D r = Screen.getPrimary().getVisualBounds();
       int height = r.getHeight();
       int width  = r.getWidth();
       label1.setText("Hello world: " + height + ", " + width);
    }

https://github.com/gvart/RRPlayer - Посмотри может поможет

READ ALSO
JFrame и просто оконные приложения на Java

JFrame и просто оконные приложения на Java

Доброго времени суток! Недавно заинтересовался оконными приложениями на Java, но наткнулся на некоторое количество типов самих приложенийХотел...

325
Координаты Scene2D

Координаты Scene2D

Я использую FitViewport с виртуальным размером 1920х1080

270
Скрыть панель навигации и состояния

Скрыть панель навигации и состояния

Как скрыть панель навигации и состояния, что бы как в играх оно выходило когда ты проводишь пальцем с нижней части экрана на вверх а не при...

256
Вывод изображений из папки drawable?

Вывод изображений из папки drawable?

Как вывести все изображение из папки drawable? Долго гуглил и искал, единственное решение которое нашел тут:

253