我在Scrollpane中有一个JList。如果你单击列表并上下移动箭头键,它就像你期望的那样工作,你可以移动你的选择索引并显示就好了。
现在,我想要做的是基本上有一个文本框,我在文本框中键入“漫画”,并希望它寻找该值的索引。这个工作很好。
问题出在列表框的值低于可见区域的位置时。如果是,则所选索引寻找,但不改变可滚动区域的位置。但是,如果我按向上或向下箭头并将requestFocus()按到列表中,并向上和向下移动,它会向右侧查看区域。
在没有改变焦点的情况下,我想要做到这一点。我希望能够只输入我想要的列表并让它显示我所选择的内容。我觉得我在这里遗漏了一些明显的东西。
答案 0 :(得分:4)
如果我理解了这个问题,那么你应该可以使用:
list.setSelectedIndex(...);
list.ensureIndexIsVisible(...);
如果这样做无效,请发布SSCCE来证明问题。