从JavaFX中的ComboBox获取char值

时间:2017-01-04 16:42:27

标签: javafx combobox type-conversion

我需要在数据类型char的组合框中获取所选值。我知道如何获得所选项目这是我坚持的转换。有什么建议吗?

这是组合框,它的内容是:

      idCharCombo = new ComboBox<>();
      idCharCombo.getItems().addAll("A","B","G","H","L","M","P","Z"); 

现在我将在一个传递int和char的方法中使用这个数据(下面是使用第二个元素仍然是对象而不是char的方法):

      if (checkStaffMemberById(Integer.parseInt(idNoTxtFld.getText()), idCharCombo.getValue()) == true){
        AlertBox.display("ID Validation", "ERROR! ID Already Exists.");

希望我能够妥善安排

1 个答案:

答案 0 :(得分:1)

由于您的组合框似乎只包含单字符字符串,并且您希望将它们视为char,因此最明显的做法是使用ComboBox<Character>代替ComboBox<String> 1}}。即替换您的声明,大概看起来像

ComboBox<String> idCharCombo ;

ComboBox<Character> idCharCombo ;

然后你可以做

idCharCombo.getItems().addAll('A','B','G','H','L','M','P','Z'); 

然后

idCharCombo.getValue()

会返回Character,根据需要将char自动装箱到checkStaffMemberById(Integer.parseInt(idNoTxtFld.getText()), idCharCombo.getValue()) ,因此您的方法调用

storyboard.instantiateViewController()

应该按原样运作。