1

我必须在古巴框架的表格中检测一行中的点击,但我不知道如何。

我有一个树表。然后我有一个按钮。如果我在表中没有选择任何内容,我希望禁用该按钮。如果我单击一个项目,我希望启用该按钮。如果我单击一个子项,我希望禁用该按钮。

可以在按钮的操作中使用:

trackSelection = true

这将起作用,但如果我单击子项目,也会启用该按钮。

然后想法是,当在桌子上点击任何东西时,然后做一些事情。我只需要跟踪任何项目的选择,然后做一个逻辑。

如何跟踪此选择?

我尝试过类似的东西:

table.setClickListener("columnId", new CellClickListener() {

            @Override
            public void onClick(Entity item, String columnId) {
                // TODO Auto-generated method stub
                LOG.info("On cell click");
            }
        });

首先,这不起作用,即使我单击一个单元格。然后,即使它会起作用,我也有完整的行,而不仅仅是一个单元格。

有人有想法吗?

谢谢最好的问候

4

1 回答 1

1

您可以使用以下命令对表中的选择更改做出反应CollectionDatasource.ItemChangeListener

    employeesDs.addItemChangeListener(event -> {
        log.info("Datasource {} item has been changed from {} to {}",
                event.getDs(), event.getPrevItem(), event.getItem());
    });

另见:https ://doc.cuba-platform.com/manual-6.9/datasource_listeners.html

于 2018-08-09T10:27:37.013 回答