我有一个灵活的完整列表框设置为listBox.setVisibleItemCount(1),因此它们充当下拉列表。 当用鼠标左键单击它们时,它们会展开并让用户选择一个项目。 是否可以使用键盘键模拟鼠标点击?
我已经尝试将按键处理程序添加到列表框中,该列表框将触发mousedown本机事件,但这没有做任何事情。
任何人都有想法吗?
提前致谢
答案 0 :(得分:0)
我还没有为我的问题找到解决方案,但我现在有这个解决方法:
listBox.addBlurHandler(new BlurHandler() {
public void onBlur(BlurEvent event) {
ListBox listBox = ((ListBox)event.getSource());
SelectElement.as(listBox.getElement()).setSize(1);
}
});
listBox.addKeyPressHandler(new KeyPressHandler() {
public void onKeyPress(KeyPressEvent event ) {
if (event.getCharCode() == 32) {
ListBox listBox = ((ListBox)event.getSource());
SelectElement.as(listBox.getElement()).setSize(listBox.getItemCount());
}
}
});