这是我的问题。
我有一个名为FilteredComboBox的通用类,该类扩展了ComboBox。它基本上是一个可编辑的组合框,可以根据用户输入过滤选择。这个FilteredCombobox由Book类型的ObservableList提供,这是一个简单的类,具有2个字段,名称和ID(显然,它具有getters,setters和toString)。
用户做出选择并从下拉列表中单击所需的书后,我想通过名为getBookId的书类中的方法获取该书ID。不幸的是,当我说bookComboBox.getValue.getBookId时,我得到了强制转换异常,因为getValue自动调用toString方法。
有办法解决吗?我想使getValue()方法返回book类型的对象,然后从那里调用我的getBookId()。
有任何想法吗?
最佳答案
对于像
ComboBox<Book> combobox = new ComboBox<>(your_book_list);
获取事件中的所选书籍项目(例如,按钮操作事件)
Book selectedBook = combobox.getSelectionModel().getSelectedItem();
Integer id = selectedBook.getBookId();