listview中的JavaFx按钮启用码

listview中的JavaFx按钮启用码,java,listview,button,javafx,Java,Listview,Button,Javafx,我有4个与listview交互的简单按钮。如果您单击某个按钮,您可以从列表视图的开始和结束分别向上和向下移动一个按钮。因此,每个按钮都有不同的操作方法: (按钮:上一个、下一个、结束、开始) 但现在我想禁用按钮,如果他们不能去开始,结束,向上或向下。通过将此代码添加到方法toPrevious(示例),我尝试执行以下操作: 此代码确实禁用了按钮,但当您可以转到listview中的上一个字符串时,它不会启用按钮。有人对此有简单的解决方案吗?您可以使用绑定: previous.disablePrope

我有4个与listview交互的简单按钮。如果您单击某个按钮,您可以从列表视图的开始和结束分别向上和向下移动一个按钮。因此,每个按钮都有不同的操作方法: (按钮:上一个、下一个、结束、开始)

但现在我想禁用按钮,如果他们不能去开始,结束,向上或向下。通过将此代码添加到方法toPrevious(示例),我尝试执行以下操作:

此代码确实禁用了按钮,但当您可以转到listview中的上一个字符串时,它不会启用按钮。有人对此有简单的解决方案吗?

您可以使用绑定:

previous.disableProperty().bind(
    list.getSelectionModel().selectedIndexProperty().isEqualTo(0));

next.disableProperty().bind(
    list.getSelectionModel().selectedIndexProperty().isEqualTo(
        Bindings.size(list.getItems()).subtract(1)));
previous.setDisable(list.getSelectionModel().getSelectedIndex() == 0)
previous.disableProperty().bind(
    list.getSelectionModel().selectedIndexProperty().isEqualTo(0));

next.disableProperty().bind(
    list.getSelectionModel().selectedIndexProperty().isEqualTo(
        Bindings.size(list.getItems()).subtract(1)));