gpt4 book ai didi

java - JavaFX 组合框上的 "No select item"?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:05:36 26 4
gpt4 key购买 nike

将值为 null 的项目放入 ComboBox 中的正确方法是什么?我尝试使用 myComboBox.getItems().add(null);,它起作用了,但是每当用户在组合框中选择这个值时,控制台就会抛出一个异常:

Exception in thread "JavaFX Application Thread" java.lang.IndexOutOfBoundsException
at com.sun.javafx.scene.control.ReadOnlyUnbackedObservableList.subList(ReadOnlyUnbackedObservableList.java:136)

所以我认为这可能不是正确的做法。有什么线索吗?

最佳答案

根据我的经验,这是 Java 8u20 引入的问题。在 Java 8u05 和 8u11 以及 JavaFX 2.x 中,您可以将 null 添加到项目列表中,并按预期方式选择该项目。在 Java 8u20 中,无论何时选择 null 值,您都会得到一个 java.lang.IndexOutOfBoundsException

Benjamin Gale:您必须使用 Java 8u20,在 ComboBox 中选择一个项目,然后选择 null 值才能看到问题。

目前,最好的选择似乎是创建一个特殊的 null 对象并适本地标记它,如前所述。

或者,如果您可以改用 ChoiceBox,我想您会发现它可以按照您想要的方式工作。

关于java - JavaFX 组合框上的 "No select item"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25877323/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com