Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Java для Web (EE, Servlet, JSP, Tomcat, Spring MVC)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.05.2018, 14:32   #1
Evdar
Пользователь
 
Регистрация: 07.12.2015
Сообщений: 19
По умолчанию JavaFX NPE при обращении к TreeView

Приветствую форумчане, очень нужна ваша помощь.
Есть один контроллер "MainController" в котором идет обработка всей программы. Есть основное меню программы, контейнер VBox, на котором есть TreeView. С помощью @FXML я вытягиваю ссылку на этот TreeView. По алгоритму программы, пользователь нажимает на кнопку "Add" на основном меню, открывается другое окно, пользователь вводит данные, по кнопке "Finish" идет обработка этих данных, и эти данные я запихиваю в TreeItem , что бы потом этот итем задать как root для TreeView, но при обращении к TreeView получаю NPE.
Вот MainController:
Код:
public class MainController
@FXML
    private TreeView<Point> tree;

 public void addCities(ActionEvent actionEvent) throws IOException {//создание нового окна
        Stage window = new Stage();
        Parent root = FXMLLoader.load(getClass().getResource("../fxml/new_add_cities.fxml"));
        window.setTitle("Add Cities");
        window.setMinWidth(680);
        window.setMinHeight(550);
        window.setScene(new Scene(root));
        window.setResizable(false);
        window.initModality(Modality.APPLICATION_MODAL);
        window.initOwner(((Node) actionEvent.getSource()).getScene().getWindow());
        window.show();
    }
Обработка нажатия кнопки "Finish"
Код:
public void checkFinish(ActionEvent event) {
        int finishFlag = 0;
        for (int i = 0; i < points.size(); i++) {
            Point p = points.get(i);
            for (int j = 0; j < edges.size(); j++) {
                Point source = edges.get(j).getSource();
                Point destination = edges.get(j).getDestination();
                if (source.equals(p) || destination.equals(p)) {
                    finishFlag++;
                }
            }
            if (finishFlag == 1) {
                Alert alert = new Alert(Alert.AlertType.INFORMATION);
                alert.setTitle("Finish alert");
                alert.setHeaderText(null);
                alert.setContentText("The graph is not closed!");
                alert.showAndWait();
            }
            finishFlag = 0;
        }
        treeItem = TreeViewDisplayUtil.add(points, edges);
       tree.setRoot(treeItem);// здесь получаю NPE
        close(event);
    }
В дебагере проверял, null в tree , treeItem заполняется коректно.
В FXML файле fx:id указано правильно

Последний раз редактировалось Evdar; 27.05.2018 в 15:17.
Evdar вне форума Ответить с цитированием
Старый 27.05.2018, 17:20   #2
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

По этим кусочкам ничего не ясно
Black Fregat вне форума Ответить с цитированием
Старый 27.05.2018, 19:35   #3
Evdar
Пользователь
 
Регистрация: 07.12.2015
Сообщений: 19
По умолчанию

Цитата:
Сообщение от Black Fregat Посмотреть сообщение
По этим кусочкам ничего не ясно
Там просто 400 строк кода, думаю если я его скину яснее не будет
Evdar вне форума Ответить с цитированием
Старый 27.05.2018, 22:18   #4
Evdar
Пользователь
 
Регистрация: 07.12.2015
Сообщений: 19
По умолчанию

Проблему решил.
TreeView не вытягивал из файла а просто создавал в классе, и добавлял через код на форму.
Evdar вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
в JavaFX какой элемент использовать чтобы указать путь к файлу - JavaFX Alexmur07 Общие вопросы по Java, Java SE, Kotlin 2 04.05.2018 00:10
Почему при обращении к структуре из класса возникает исключение:нарушение прав доступа при записи? iron-mik Помощь студентам 2 18.05.2014 01:40
Зависает VBA при обращении к Google Maps при расчете расстояний AlexTrasko Microsoft Office Excel 1 30.07.2013 10:49
Зависание при работе с HttpWebRequest при обращении к некоторым сайтам Mishiko C# (си шарп) 0 16.08.2012 12:24