Java FX привязка к переменной по Id

150
23 марта 2019, 00:40

Давно уже увлекаюсь java в свободное время и решил начать изучать javafx(Буквально часа два назад). И я некоторые моменты не понял. Есть fxml файл в котором описываться сцена, есть Controller который указан в этом fxml и он же обрабатывает всякие взаимодействие пользователя с интерфейсом, main.java запускает все это. Скажем у меня есть такой fxml:

<GridPane alignment="center" hgap="10" vgap="10" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.151" fx:controller="sample.Controller">
  <children>
      <Button text="Faariz click" fx:id="btn_view"/>
 </children>
</GridPane>

И есть Controller.java:

public class Controller{
@FXML
private Button button;
@FXML
public void initialize(){
    button.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler<MouseEvent>() {
        @Override
        public void handle(MouseEvent mouseEvent) {
            button.setText("Thanks!");
        }
    });
}
}

Так вот выводит ошибку:

Caused by: java.lang.NullPointerException
at sample.Controller.initialize(Controller.java:15)

Понятное дела но это код я взял из интернета. Так вот вопросы

1)Правильно ли я все понял?

2)есть ли какой нибудь метод типа findViewById как в андроид чтобы привязать view с переменной?

Answer 1

id элемента Button должна соответствовать в контроллере.

@FXML
private Button button;

<Button text="Faariz click" fx:id="button"/>
READ ALSO
Расположение элементов на Jframe

Расположение элементов на Jframe

Подскажите пожалуйста с помощью какого Layout можно расположить элементы на Jframe в столбик один под другим? Спасибо

121
В чем разница между этми записями?

В чем разница между этми записями?

У меня есть класс Car, и я хочу создать его экземплярМожно написать:

137
Как вытащить объект enum по значению?

Как вытащить объект enum по значению?

Есть код (ниже)Мне нужно вытащить MOSCOW по uid

153
Android Room - сохранение зависимостей

Android Room - сохранение зависимостей

Пытаюсь приспособить Room для работы с зависимостями "один-ко-многим"Про то, как использовать @Relation для чтения записей рассказывается в [1,2,3,4]

138