如何点击古巴框架中表格中的一行



我必须在Cuba框架中检测到一行中的点击,但我不知道如何检测。

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

有可能,在按钮的作用下使用:

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");
}
});

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

有人有主意吗?

谢谢向致以最良好的问候

您可以使用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

最新更新