在单行中,我们显示文本字段以输入搜索文本以及搜索图像作为按钮字段。在该行的下方,我们显示了名称列表。
这里的问题是,图像按钮字段在键盘箭头键向下移动时没有获得焦点。但是在向上移动时,当我们点击左箭头时它会聚焦。但是向下运动并没有成为向上箭头运动的焦点。
输入搜索文本的文本字段:
final TextField tfTeamSearch = new TextField();
tfTeamSearch.setFocus(true);
图片按钮栏位:
btnSearchImage = new Button();
btnSearchImage.setIcon(imgSearchUnFocus);
btnSearchImage.getStyle().setBgTransparency(0);
btnSearchImage.getStyle().setBorder(null);
btnSearchImage.getStyle().setFont(font);
btnSearchImage.getSelectedStyle().setFont(font);
btnSearchImage.getPressedStyle().setFont(font);
btnSearchImage.getUnselectedStyle().setFont(font);
btnSearchImage.setFocusable(true);
你可以帮我解决如何使用箭头键设置向上和向下移动的焦点吗?
答案 0 :(得分:1)
首先:如果您希望将焦点设置为tfTeamSearch.requestFocus()
,则应使用tfTeamSearch.setFocus(true)
代替TextField
。 tfTeamSearch.setFocus(true)
仅更改样式。
其次:您可以使用Component
方法setNextFocusDown
,setNextFocusUp
,setNextFocusLeft
或setNextFocusRight
来设置焦点下的下一个组件。