2012-07-05 66 views
2

我有一个JSplitPane垂直分裂。顶部组件是JScrollPane中的表格,底部组件是行的详细说明。底部组件总是具有相同数量的元素,所以基本上它保持相同的高度。有没有办法在底部组件上使用setDividerLocation?

现在,我正在使用setDividerLocation来定位窗格分割的位置。如果我将100放入其中,顶部将是100px,如果500那么顶部将是500px。但是如果我重新调整JFrame的大小,那么顶层组件仍然是100px,底层组件非常大。

我想知道是否有办法根据底部组件而不是顶部组件设置分隔器位置?

对不起,如果我没有解释清楚,如果我说的仍然是混淆,请让我知道,我可以尝试更好地解释它。

------编辑------

感谢ControlAltDel找出答案。这是我的代码看起来有点貌似现在:“底部组件..保持不变高度”

JSplitPane splitPane = new JSplitPane(); 
splitPane.setTopComponenet(new JTable()); 
splitPane.setBottomComponent(new JPanel()); 
splitPane.setResizeWeight(1); // This gives the top component priority when the window is resized 
+1

*我没有看到使用'JSplitPane'本的优势案件。将底部组件放在'BorderLayout'的'PAGE_END'上,并在'CENTER'中使用滚动窗格。 – 2012-07-05 16:00:46

+1

你做出了有效的评论。我猜之前,这个程序需要调整底部组件,但它已经改变了很多,我可能会回到BorderLayout。感谢启发。 – samwell 2012-07-05 16:13:16

回答

相关问题