Java 组合框FXML默认值

Java 组合框FXML默认值,java,javafx,combobox,javafx-2,fxml,Java,Javafx,Combobox,Javafx 2,Fxml,如何使用FXML在组合框中设置默认值 <ComboBox fx:id="cbo_Bacteriologie_Aesculine" prefHeight="21.0" prefWidth="105.0" GridPane.columnIndex="1" GridPane.rowIndex="0"> <items> <FXCollections fx:factory="observableArrayList"> &l

如何使用FXML在组合框中设置默认值

<ComboBox fx:id="cbo_Bacteriologie_Aesculine" prefHeight="21.0" prefWidth="105.0" GridPane.columnIndex="1" GridPane.rowIndex="0">
    <items>
        <FXCollections fx:factory="observableArrayList">
            <String fx:value="NVT" />
            <String fx:value="Bezig" />
            <String fx:value="Positief" />
            <String fx:value="Negatief" />
        </FXCollections>
    </items>
</ComboBox>

我希望默认情况下选择
NVT
。我尝试添加
selected=“selected”
等,但似乎没有找到正确的语法


是否可以使用场景生成器编辑列出的项目?我似乎找不到它。

我认为在FXML中不可能找到它。您需要在控制器中的组件初始化中执行此操作,例如,使用以下行
cbo_细菌学_Aesculine.getSelectionModel().setSelectedIndex(1)用于选择元素Bezig

但是,如果您找到一种在FXML中实现它的方法,我很感兴趣


编辑:可以在FXML中编辑。你可以在Guedolino的答案()中看到这一点,它应该成为这个问题的正确答案。

我在第一个建议的方法中遇到了一个奇怪的错误

setSelectedItem(T)在SelectionModel中具有受保护的访问权限 其中T是一个类型变量: T扩展类SelectionModel中声明的对象

对我来说

getSelectionModel().select("NVT");
工作起来很有魅力。

用这个:

<ComboBox>
    <items>
        <FXCollections fx:factory="observableArrayList">
            <String fx:value="NVT" />
            <String fx:value="Bezig" />
            <String fx:value="Positief" />
            <String fx:value="Negatief" />
        </FXCollections>
    </items>
    <value>
        <String fx:value="NVT" />
    </value>
</ComboBox>


好的,我使用了以下代码
cbo_细菌学_七叶皂苷。getSelectionModel().selectFirst(),它就做到了。我希望FXML中会有支持来处理这个问题:)
也能工作,看起来更干净。Gives
javafx.FXML.LoadException:String不是有效的类型。
@BappadityaSasmal您需要导入String类<代码>
不要忘记这些导入: