[英]Layout suggestions for GUI?
所以我想在底部创建一个新的JList
和一个新的JPanel
,但是我对BoxLayout
, FlowLayout
等不太熟悉。 您有什么建议,这样我就可以将GUI变成这样:
对不起,请多多帮助! :)
编辑:这是做什么的? JPanel.setLayout(new BoxLayout(JPanel,BoxLayout.PAGE_AXIS));
使用MigLayout 。 它非常易于使用,学习曲线很小。 它可以轻松处理您要使用的布局。 具体来说, 请先从《快速入门指南》开始 ,然后是其余API的《 白皮书》 。
使用MigLayout观察的特定部分是停靠的元素(在右侧和底部,看起来像)和fill
,因为它看起来还像您希望东西占据整个空间。
除此之外,您可能不需要更多的空间来指定布局。
举例来说,在Griffon框架中使用MigLayout和SwingBuilder ,这就是我要布局的内容的方法:
migLayout(layoutConstraints: 'fill, wrap 2',
columnConstraints: '[grow|]',
rowConstraints: '[grow|]')
panel (constraints: 'spany 2, grow') {
// Main content with the picture go in here
}
list(constraints: 'grow') {
// Top list
}
list(constraints: 'grow') {
// Bottom list
}
panel(constraints: 'grow') {
// Bottom panel
}
panel() {
// Button panel
}
可能有许多更好的方法可以做到这一点,而且我还没有将布局放在一起并自己运行,因此我不确定100%是否可以使用它,但是它应该是一个很好的起点。
要么使用GridBadLayout,要么将嵌套面板与BorderLayout一起使用。 您需要具有一些定义布局的JPanel容器,然后在其上添加功能组件。
对于您的示例,我将从中心的面板(面板A)和东边界的面板(面板B)开始。 然后为Box B使用BoxLayout并添加JList,JButton,JLabel和Jlists以及remove标签按钮。
对于面板A,在南部边界(面板C)上添加另一个容器面板,在中心(面板D)上添加另一个容器面板,在东部边界(面板E)上添加另一个容器面板。 在带有框式布局的面板E上添加新的两个列表,在面板C上添加图片。
希望能帮助到你
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.