我想知道在 InputTextCell 中添加事件的方法。 此事件必须是: “当用户按下 Tab 键时,下一个单元格将获得焦点,这个单元格将位于其他列中。”
我尝试使用 onBrowserEvent,但找不到找到其他单元格的方法。
最佳答案
您在 CellPreviewHandler 中执行此操作:
myTable.addCellPreviewHandler(new Handler<T>() {
@Override
public void onCellPreview(CellPreviewEvent<T> event) {
if ("keydown".equals(event.getNativeEvent().getType())) {
int col = event.getContext().getColumn();
int row = event.getContext().getIndex();
if (event.getNativeEvent().getKeyCode() == 9) {
col++;
if (col == getColumnCount()) {
col = 0;
}
getRowElement(row).getCells().getItem(col).getFirstChildElement().getFirstChildElement().focus();
}
}
});
关于java - 如何将键盘事件添加到数据网格单元格中的文本输入单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11509836/