java - 我无法从组合框中获得选择
问题描述
我正在编写一个带有组合框的程序,您可以在其中选择不同的教授。做出选择后,单击“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();
}
我需要获取选择并将其存储为变量,因为然后我需要使用它从数据库中获取数据,但仅限于该教授的数据。如果使用此方法,当我尝试加载新场景时程序会卡住。但是,如果不是从组合框中获取选择,我只是传递一个字符串,那么它工作正常,所以问题不在于加载另一个场景。
解决方案
推荐阅读
- linux - 以下命令的目的是什么?
- python-3.x - 如何使用 svg 字体绘制文本
- azure - 如何将 Azure Data Lake Store gen 2 File Share 与 Azure Databricks 连接?
- c++ - 避免使用模板类型过度重复
- material-ui - Material-UI 表格分页翻译
- azure-cosmosdb - CosmosDB Mongo API 复合唯一索引是否要求每个字段都是唯一的?
- mysql - 试图将 SQL Server 转换为 MySql 以供上课
- node.js - 在 PM2 的集群模式下运行我的 Puppeteer 应用程序并没有利用多个进程
- azure - 无法在 Azure 中使用 CosmosDB Binding 作为 SpringBoot App 运行时间触发函数
- python - 选择一些行作为一个组,然后在 txt 文件中的同一组中为每一行赋予相同的标签