当前位置: 首页 > 知识库问答 >
问题:

javaFX中的组合框

西门良才
2023-03-14
<ComboBox fx:id="categoryComboBox" prefHeight="21.0" prefWidth="405.0" GridPane.columnIndex="1" GridPane.rowIndex="2">
      <items>
        <FXCollections fx:factory="observableArrayList">
          <String fx:value="Woodenware" />
          <String fx:value="Stoneware" />
          <String fx:value="Metalware" />
          <String fx:value="Fabric" />
        </FXCollections>
      </items>
    </ComboBox>
 @FXML
private ComboBox<?> categoryComboBox;
public void setCategoryComboBox(ComboBox<String> categoryComboBox) {
    this.categoryComboBox = categoryComboBox;
}

public ComboBox<String> getCategoryComboBox() {
    return categoryComboBox;
}

@FXML
private void comboBoxSelection(ActionEvent event) {
   categoryComboBox.getSelectionModel().selectedItemProperty().addListener(new ChangeListener<String>() {
         public void changed(ObservableValue<? extends String> ov, 
             String old_val, String new_val) {
                String categoryStr =  getCategoryComboBox().getValue().toString(); //Don't know what to put here
     }
  int category = panel.getCategoryComboBox().getValue()

提前谢了。

共有1个答案

严承允
2023-03-14

您的组合框上有一个泛型类型说明符,因此它返回的任何值都将是字符串。

您不能将字符串分配给int值,这就是为什么您试图这样做时会得到“不兼容的数据类型”错误的原因。

相反,如果将类别类型设置为字符串,则将不再得到“不兼容数据类型错误”

String category = panel.getCategoryComboBox().getValue()
 类似资料:
  • 我需要关于设置组合框按钮单元格的帮助。我使用一个组合框来显示可观察列表中的数据,该列表包含两个列的表中的数据,“步骤”和“下一步”(下一步包含一个插入在步骤列中的项目);我需要做的是显示带有“步骤”列表的组合框列表单元格和相对的“下一步”按钮单元格。现在,我可以正确地看到列表单元格,但我的按钮单元格总是空的。 代码: 提前感谢。

  • 问题内容: 我刚刚开始学习JavaFX2。 现在,我正在尝试构建示例应用程序。然后我陷入了组合框。 我没有在JavaFX中找到对组合框的键值对的任何引用。http://docs.oracle.com/javafx/2/api/index.html上 的组合框javadoc 对键值对的描述不多。 如何创建包含显示值和实际值不同的项目的组合框? 问题答案: 您有2种方法: 1.简单地覆盖数据模型类中的

  • 问题内容: 我正在寻找一种将自动完成功能添加到JavaFX的方法ComboBox。经过大量搜索之后,该在这里提问了。 这AutoFillBox是已知的,但不是我要搜索的内容。我想要的是一个可编辑的组合框,在键入列表时应进行过滤。但是我也想打开列表而不输入并查看整个项目。 任何想法? 问题答案: 我找到了一个对我有用的解决方案: 你可以用 基于此,我根据自己的需要对其进行了自定义。 随时使用它,如果

  • 我正在寻找一种将自动完成添加到JavaFX的方法。 这个是已知的,但不是我正在搜索的。我想要的是一个可编辑的组合框,在输入时,列表应该被过滤掉。但我也想打开列表,而不必输入和查看所有项目。 知道吗?

  • 我试图创建一个,它将显示所选的预览,但是会显示字符串值。 唯一有效的方法似乎是创建

  • 我想要一个组合框,它会在用户键入时过滤列表项。它应该如下工作: 键入时,文本字段应该显示一个可能的选择,但是用户尚未键入的单词部分应该突出显示。 当他打开列表时,下拉框应该只显示可能的选项? 使用箭头键,用户应该在缩小可能的项目后选择剩余的项目之一。 过滤并不重要,跳转到第一个匹配的选择也可以。 有类似的吗?