小编the*_*dle的帖子

如何侦听 JavaFX ListView 中的选择更改

我已经搜索了一段时间,但没有找到任何有效的方法。我想让它每次用户单击我列表中的新客户时,客户详细信息都会显示在字段中(请参见下面的屏幕截图):

客户画面

在废弃了我在网上找到的一堆不起作用的解决方案之后,这是我迄今为止的基本代码:

@FXML
private ListView<Client> clientList;
private ObservableList clientObservableList;

@Override
public void initialize(URL url, ResourceBundle rb) {
    this.initializeGymState();//this loads in some dummy clients
    clientObservableList = FXCollections.observableArrayList(gym.getClients());
    clientList.getItems().setAll(clientObservableList);
    clientList.getSelectionModel().selectFirst();
    this.clientDisplayDetails();//this displays the client details, works fine
}
Run Code Online (Sandbox Code Playgroud)

我什至不知道从哪里开始这个解决方案,我有一个 ObservableList 的原因是因为我希望使用 ListChangeListener,但现在我认为 ListChangeListener 可以监听列表中的更改(添加、rmove 等) .),而不是选择的变化。我是 JavaFX 的新手,所以请像我 5 岁的孩子一样跟我说话:P

谢谢你们

java listview javafx scenebuilder observablelist

3
推荐指数
1
解决办法
3306
查看次数

标签 统计

java ×1

javafx ×1

listview ×1

observablelist ×1

scenebuilder ×1