我很感激,如果这里的任何人都很友好地推荐我选择什么样的布局经理 以及如何将附加的GUI分成Jpanels。
非常感谢。
到目前为止我尝试过:
Jframe - BorderLayout Map(来自另一个扩展jpanel的类的网格和清除按钮) - 所以我把它放在jframe.CENTER中
右边的按钮:jframe.EAST 我将它们放在gridlayout的jpanel中(但是我无法获得组件之间的间距)
底部的按钮:jframe.SOUTH 我将它们放在gridlayout的jpanel中(但是我无法获得组件之间的间距)
答案 0 :(得分:9)
在尝试确定应该使用哪种布局时,首先应该尝试确定责任范围......
例如......
根据您的需求,我可以从GridBagLayout
开始。这可能看起来很复杂,但是如果你将UI分解成单独的组件,专注于他们的个人需求,它应该变得更简单...
左边的面板......
我会想要使用GridBagLayout
,因为它允许组件使用首选大小,但仍允许您设置类似网格的网格......
对于箭头按钮......
这会变得有点复杂,但我会使用GridLayout(2, 3)
(2行,3列)。这将需要在顶行的第一和第三位置添加填充面板,但仍然保持按钮的大小相等......
对于这个小组......
我很想使用GridBagLayout
,因为它可以让您跨越行甚至将它再次拆分为两个单独的面板,左侧的控件位于GridLayout(2, 1)
中根据需要控制右边的BorderLayout
......
对于“进展”小组......
我很想使用...... GridBagLayout
。主要是因为它可以让你为进度条提供更多的权重,然后是标签。
对于主面板......
我可能会想要使用BorderLayout
,并在Clear Map
的另一个面板上使用NORTH
,允许它在CENTER
位置和地图中保持其首选大小GridBagLayout
或{{1}}中的面板取决于各个组件的内容......