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