JScrollPane在JPanel的剩余区域上最大化嵌入式组件

时间:2012-11-02 21:48:23

标签: java swing jpanel jscrollpane jlist

看起来当我在JScrollPane中放置JTextArea或JList时,组件在其所在的JPanel的剩余区域上获得最大化:

...
this.topPnl = new JPanel();

this.topPnl.setLayout(new BoxLayout(this.topPnl, BoxLayout.X_AXIS));

this.selFileList = new JList(new String[]{"one", "two", "three", "four"});
JScrollPane scroll = new JScrollPane(this.selFileList);

this.topPnl.add(scroll);
...

如果我没有在JScrollPane中设置JList并且只是将它直接添加到JPanel,那么JList看起来足够大以显示所有项目但是我想控制容器的大小,即具有固定大小如果元素的数量变化很大,然后有滚动条,这是使用JScrollPane背后的整个想法。

我想知道我做错了什么以及如何完成我上面描述的内容?

1 个答案:

答案 0 :(得分:3)

您可能正在寻找setVisibleRowCount(),这取决于Scollable JList的实施情况。有一个示例here和一些有用的警告here