我有一个要求,它由顶部的一个表格和一个由底部的 3 个选项卡组成的选项卡表组成。在 3 个选项卡中包含 3 个不同的表,我的要求是单击顶部表时,必须在选项卡表的每个表中显示一些相关数据。
当我现在单击表格行时,此功能对我来说工作正常,但这里的问题是加载应用程序时,在顶部表格中,默认情况下必须选择第一行,并且必须填充相关数据并在选项卡表中显示表。如何通过使用内置侦听器来实现这一点?如果提供示例,它将有很大帮助。
由于单击一行后该功能正常工作,我可以假设您的侦听器工作正常。
我相信你可以myTable.setValue(table.firstItemId())
在初始化视图后使用top Table的方法。假设您的侦听器调用(例如)方法myApplication.rowSelected(Item item)
,您可以在设置表值后手动调用它。
例子:
void init() {
myTable.addListener(new ItemClickEvent.ItemClickListener() {
void itemClick(ItemClickEvent event) {
rowSelected(event.getItem());
}
});
if(!myTable.getItemIds().isEmpty()) {
Object firstId = myTable.firstItemId();
myTable.setValue(firstId);
myTable.rowSelected(myTable.getItem(firstId));
}
}
void rowSelected(Item item) {
// Do stuff
}