gpt4 book ai didi

events - 使用向上和向下键时,如何在 GWT CellTable 中获取选定的行?

转载 作者:行者123 更新时间:2023-12-02 22:15:57 25 4
gpt4 key购买 nike

我想在用户向上或向下按下键时获取 GWT CellTable 中的选定行。在我的示例中,我有一个包含三列(ID、名称、日期)的表,并且我已经实现了处理点击事件的代码。单击一行时,我得到了选定的对象。现在我想在使用箭头键上下移动表格的行时执行相同的操作。

这是我的代码:

    // Create id column.
TextColumn<MyObject> idColumn = new TextColumn<MyObject>()
{
@Override
public String getValue(MyObject obj)
{
return String.valueOf(obj.getId());
}
};
// Create name column.
TextColumn<MyObject> nameColumn = new TextColumn<MyObject>()
{
@Override
public String getValue(MyObject obj)
{
return obj.getName();
}
};
// Create date column.
TextColumn<MyObject> dateColumn = new TextColumn<MyObject>()
{
@Override
public String getValue(MyObject obj)
{
return String.valueOf(obj.getDate());
}
};

// Create the CellTable element and add columns
CellTable<MyObject> table = new CellTable<MyObject>();
table.addColumn(idColumn, "ID");
table.addColumn(nameColumn, "Name");
table.addColumn(dateColumn, "Date");

// Create the selectioModel and the SelectionChangeEvent Handler
NoSelectionModel<MyObject> selectionModelMyObj = new NoSelectionModel<MyObject>();
Handler tableHandler = new SelectionChangeEvent.Handler()
{
@Override
public void onSelectionChange(SelectionChangeEvent event)
{
MyObject clickedObj = selectionModelMyObj.getLastSelectedObject();
Window.alert("Object selected: " + clickedObj);
}
};
// Add the handler to the selection model
selectionModelMyObj.addSelectionChangeHandler( tableHandler );
// Add the selection model to the table
table.setSelectionModel(selectionModelMyObj);

谢谢大家。

最佳答案

默认情况下,CellTable 中的键盘导航仅更新 keyboard selected row .只有按下 enter 键,该行才会被选中

如果您希望选择跟随键盘选择,您可以设置keyboard selection policybound to selection .我不确定它如何与 NoSelectionModel 一起工作,但与 SingleSelectionModel 一起工作可能会更好。

关于events - 使用向上和向下键时,如何在 GWT CellTable 中获取选定的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14455780/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com