Ошибка IOEXCEPTION снова и снова в FXML. Попытка поместить файл FXML в элемент списка в ListView

public class PopupController  {
    public ListView<String> listView;
    public Button addWalletButton;
    public PieChart piechart;
    public Label size;
    private WalletModel walletModel = Factory.inject(WalletModel.class);

    @FXML
    public void initialize() throws IOException {


        listView.setCellFactory(param -> new EditableCell());
        addWalletButton.setOnMouseClicked(event -> {
            walletModel.CreateWallet();
            listView.getFixedCellSize();
            listView.getItems().add("Wallet " + walletModel.WalletSize());
            size.setText("Total Wallets:  " + walletModel.WalletSize());
        });
        size.setText("Wallet Size " + walletModel.WalletSize());
        listView.getItems().add("Wallet 1");
    }

    private class EditableCell extends ListCell<String>{

        private final TextField textField;

        EditableCell() throws IOException {
            textField = new TextField();
            setGraphic(FXMLLoader.load(getClass().getResource("/selectbutton.fxml")));
        }

        @Override
        protected void updateItem(String item, boolean empty) {
            super.updateItem(item, empty);
            if (empty){
                textField.setVisible(false);
            }
            else{
                textField.setVisible(true);
                textField.setText(item);
            }
        }
    }



}

Он показывает ошибку в первом утверждении в методе initialize ().

Я пытаюсь поместить файл fxml в элемент списка по кнопке («добавить кошелек»). Я прикрепил свой код fxml ниже.

Я не получаю трассировку стека, потому что она показывает ошибку компиляции

<AnchorPane prefHeight = "27.0" prefWidth = "69.0" xmlns = "http://javafx.com/javafx/8.0.121"
            xmlns:fx = "http://javafx.com/fxml/1" fx:controller = "com.gazman.coco.desktop.controllers.PopupController">
    <Button fx:id = "select" layoutX = "6.0" layoutY = "2.0" mnemonicParsing = "false" text = "Button"/>
</AnchorPane>

Что такое трассировка стека? Пожалуйста, отредактируйте свой вопрос, чтобы помочь другим вам помочь.

Dici 09.09.2018 22:22

на самом деле он не компилируется, поэтому у меня сейчас нет трассировки стека

Shrajan Tiwari 09.09.2018 22:27

Хорошо, тогда можешь опубликовать полную ошибку?

Dici 09.09.2018 22:28

Ошибка: (23, 42) java: незарегистрированное исключение java.io.IOException; должен быть пойман или объявлен брошенным только это

Shrajan Tiwari 09.09.2018 22:29
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
4
131
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

IOException - это проверенное исключение, что означает, что с ним нужно явно обработать одним из двух способов:

  • попал в пункт catch заявления try-catch
  • распространяется методом, в котором может произойти исключение. Это делается путем добавления throws IOException в конец подписи вашего метода.

Это вынуждает разработчиков обрабатывать типичные сбои для операций ввода-вывода и других операций с разумным ожиданием внешнего сбоя.

Спасибо, от вашего предложения, я пробовал это. но это не работает

Shrajan Tiwari 09.09.2018 22:38

Он должен работать, если вы правильно применяете эти правила. У вас есть IDE? Это поможет вам решить такие проблемы.

Dici 09.09.2018 22:38

, это сработало, спасибо. но не сработало вторым методом. Я реализовал первый. Еще раз спасибо.

Shrajan Tiwari 09.09.2018 22:41

Круто, тогда смело примите ответ :) И обратите внимание на то, как вы обрабатываете исключения, это очень важная часть программы

Dici 09.09.2018 22:44

хорошо, только начал работать, раньше мало платил им, но теперь буду

Shrajan Tiwari 09.09.2018 22:47

привет @Dici, не могли бы вы помочь мне с добавлением настраиваемых элементов списка из файла fxml. Я также вставил файл fxml ниже. Мне просто нужно поле texg и кнопка в качестве элемента списка.

Shrajan Tiwari 10.09.2018 00:19

Привет, вы, вероятно, захотите задать еще один вопрос, если у вас другая проблема

Dici 10.09.2018 00:20

Привет @ Dici, я пробовал, но StackOverflow не позволяет мне задать еще один вопрос.

Shrajan Tiwari 10.09.2018 12:47

Вы уверены? Что вам мешает?

Dici 11.09.2018 08:17

да, вот что показывает (недавно вы задали 3 вопроса, некоторые из которых не были очень хорошо восприняты сообществом. Каждый учится в своем собственном темпе, и допустить некоторые ошибки - это нормально. Тем не менее, прием ваши вопросы полученные до сих пор, могут в конечном итоге полностью заблокировать вашу учетную запись от вопросов. Прошло 2 дня с тех пор, как вы задали свой последний вопрос. Мы просим вас подождать 7 дней, прежде чем снова задавать вопросы. Используйте это время, чтобы вернуться к своим предыдущим вопросам, отредактируйте, чтобы решить любые проблемы что люди указали в комментариях.)

Shrajan Tiwari 11.09.2018 11:05

Думаю, это означает, что ваши вопросы были недостаточно качественными. Вы правильно исследовали, прежде чем публиковать их? Включили ли вы всю информацию, необходимую для того, чтобы люди могли вам помочь? Вы правильно отформатировали свой код? и т. д. Я предлагаю вам убедиться, что ваш следующий вопрос соответствует этим критериям.

Dici 11.09.2018 13:19

Я снова задал вопрос, и вот ссылка, не могли бы вы взглянуть на нее. stackoverflow.com/questions/52274295/…

Shrajan Tiwari 11.09.2018 13:44

Круто, дай мне немного времени

Dici 11.09.2018 19:37

Вы можете восстановить свой вопрос?

Dici 11.09.2018 19:39

Что ж, спасибо за потраченное время, но я решил эту проблему, которую не стоило загружать, поэтому я удалил ее

Shrajan Tiwari 11.09.2018 19:48

Хорошо, по крайней мере, вы исправили свою проблему ^^

Dici 11.09.2018 20:01

У меня есть еще один, подскажите, как и где я могу рассказать вам о своей ошибке и проблеме

Shrajan Tiwari 11.09.2018 20:39

Другие вопросы по теме