首页 > 解决方案 > 我无法从组合框中获得选择

问题描述

我正在编写一个带有组合框的程序,您可以在其中选择不同的教授。做出选择后,单击“GO”按钮并转到新场景。但是, .getSelectedItem() 方法无法编译。如果我使用 .getSelectionModel().getSelectedItem() 它会运行但它不起作用。

我也尝试过 .getItem() 和 .getValue() 方法。我曾经将代码全部放在一个方法中,但我需要传递它,所以我创建了一个新方法,该方法从带有事件的方法调用。我还尝试使用“GO”按钮从方法中调用该方法。

这是获得选择的两种方法:

public void InstructorSelected(ActionEvent event)
{

    String instructorSelected = determineSelection();
    System.out.println(instructorSelected);

}
public String determineSelection()
{

    String selection = combobox.getSelectionModel().getSelectedItem();

    return selection;

}

这是当您单击第二个“GO”按钮时加载第三个场景的事件方法:

public void goToCourseViewButtonPushed(ActionEvent event) throws IOException 
{
        Parent CourseViewParent = 
        FXMLLoader.load(getClass().getResource("CourseView.fxml"));
        Scene CourseViewScene = new Scene (CourseViewParent);

        Stage CourseWindow = (Stage) 
        ((Node)event.getSource()).getScene().getWindow();

        CourseWindow.setScene(CourseViewScene);
        CourseWindow.show();
} 

我需要获取选择并将其存储为变量,因为然后我需要使用它从数据库中获取数据,但仅限于该教授的数据。如果使用此方法,当我尝试加载新场景时程序会卡住。但是,如果不是从组合框中获取选择,我只是传递一个字符串,那么它工作正常,所以问题不在于加载另一个场景。

标签: javacombobox

解决方案


推荐阅读