我们正在尝试使用CellTable
创建可编辑的网格。使用
对于习惯的会计师来说,案例是相当高的数据量输入
10键输入电子表格。我们正在尝试复制电子表格 -
风格键盘导航尽可能接近。
有没有办法避免必须按Enter才能进入编辑模式
对于TextInputCell
?我试过压倒一切
{J} TextInputCell.onBrowserEvent()
在焦点时调用onEnterKeyDown()
收到了活动,但这没有用。
有没有办法使用 Tab 和 Shift - Tab 进行导航 列而不是LEFT-ARROW和RIGHT-ARROW? CellTable似乎是 硬编码使用左右箭头并且难以延伸。
答案 0 :(得分:6)
经过相当多的工作尝试后,我们确定CellTable不够可扩展,无法满足我们的需要。我们最终扩展了GWT的Grid类,从CellTable中获取设计线索,使其能够很好地满足我们的需求。
在我们的用例中,80%的页面视图将显示少于10行,并且我们永远不会有超过600行乘10列(<0.5%的情况下行超过500行)。我们使用延迟加载模式而不是完整的flyweight模式。最初填充网格时,仅显示小部件用于显示基础值对象的数据。 FocusHandler附加到每个仅显示窗口小部件。当用户点击或标记显示小部件时,FocusHander会使用可编辑的小部件交换该行的仅显示小部件。
仅限显示的小部件仅限于轻量级小部件,如TextBox和CheckBox,因此可以接受渲染时间。 100行x 5列在不到2秒的时间内渲染。 SuggestBoxes,DateBoxes和其他复合材料仅限于用作可编辑的小部件。
优点
缺点