这是我的问题。 我有一个名为FilteredComboBox的扩展ComboBox的泛型类。它基本上是一个可编辑的组合框,根据用户输入过滤选择。这个FilteredCombobox是由Book类型的ObservableList提供的,它只是一个简单的类,有2个字段,名称和id(显然它有getter,setters和toString)。从组合框中获取对象
用户做出选择并点击他想从下拉菜单中选择的图书后,我希望通过图书类中名为getBookId的方法来获取此图书标识。不幸的是,当我说bookComboBox.getValue.getBookId时,我得到了强制异常,因为getValue会自动调用toString方法。 有没有办法解决它?我想让getValue()方法返回一个book类型的对象,并从那里调用我的getBookId()。
任何想法?
不幸的是它给了我同样的错误(在行,其中我说getSelectionModel()getSelectedItem()。): java.lang.ClassCastException:java.lang.String中不能转换为图书 – Damian
@ user2083691显示的代码定义bookComboBox和FilteredComboBox。它应该(通过假设)'FilteredComboBox bookComboBox;'。 –
另外验证'FilteredComboBox扩展组合框'不只是'ComboBox' –