Błąd "Location is not set" - JavaFX

Błąd "Location is not set" - JavaFX
  • Rejestracja: dni
  • Ostatnio: dni
0

Cześć, piszę tutaj bo zaraz chyba wywalę kompa przez okno.
Od wczoraj nad tym siedzę, i nie wiem gdzie jest błąd - ścieżka jest na pewno dobra.
Może Wy coś zauważycie, Ja już pier****a dostaję...
Z góry dzięki : )

Kopiuj
@FXML
    private void showDialog(){

        Stage dialog = new Stage();
        dialog.initOwner(borderPane.getScene().getWindow());

        try {

            FXMLLoader loader = new FXMLLoader();
            loader.getClass().getResource("/sample/dialog/dialogWindow.fxml");
            loader.setController(new dialogController(this.listView));

            //Parent root = FXMLLoader.load(getClass().getResource("sample/dialog/dialogWindow.fxml"));
            Parent root = loader.load();
            dialog.setTitle("Choose File");
            dialog.setScene(new Scene(root));
            dialog.show();

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
Potat0x
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 372
0
Kopiuj
FXMLLoader loader = new FXMLLoader();
loader.getClass().getResource("/sample/dialog/dialogWindow.fxml");

Do konstruktora FXMLLoader przekaż to, co zwraca druga linijka, albo użyj loader.setLocation(...).

PI
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2787
0

A jak będziesz wywalał kompa przez okno, to to chociaż nagraj i wrzuć na YT :P

  • Rejestracja: dni
  • Ostatnio: dni
0
Potat0x napisał(a):
Kopiuj
FXMLLoader loader = new FXMLLoader();
loader.getClass().getResource("/sample/dialog/dialogWindow.fxml");

Do konstruktora FXMLLoader przekaż to, co zwraca druga linijka, albo użyj loader.setLocation(...).

Dzięki za odpowiedź.
W obu przypadkach wywala mi error "javafx.fxml.LoadException: Controller value already specified."
Wiem, że dla dialogWindow, controller jest już określony w pliku fxml, ale muszę do tego controllera przekazać obiekt ListView i nie wiem jak inaczej to zrobić.

Potat0x
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 372
0

Po prostu wywal określanie kontrolera z pliku .fxml. Jeżeli ustawiasz go w kodzie jak wyżej to wystarczy.

  • Rejestracja: dni
  • Ostatnio: dni
0
Potat0x napisał(a):

Po prostu wywal określanie kontrolera z pliku .fxml. Jeżeli ustawiasz go w kodzie jak wyżej to wystarczy.

Dzięki, wszystko działa : )

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.