【问题标题】:Choosing the layout managers and number of panels for Java GUI为 Java GUI 选择布局管理器和面板数量
【发布时间】:2013-09-17 06:22:02
【问题描述】:

如果有人愿意推荐我,我将不胜感激,可以选择哪些布局管理器 以及如何将附加的 GUI 分离到 Jpanels 中。

非常感谢。

到目前为止我所尝试的:

Jframe - 边框布局 地图(来自另一个扩展 jpanel 的类的网格和清除按钮) - 所以我把它放在 jframe.CENTER 中

右边的按钮:jframe.EAST 我将它们放在网格布局中的 jpanel 中(但我无法获得组件之间的间距)

底部按钮:jframe.SOUTH 我将它们放在网格布局中的 jpanel 中(但我无法获得组件之间的间距)

【问题讨论】:

  • 那么,你有什么尝试?
  • @Rudy:感谢您的提问。很抱歉没有把它放在第一位。我编辑了问题。

标签: java swing layout jpanel layout-manager


【解决方案1】:

在尝试确定应使用的布局时,应首先尝试确定责任范围...

例如...

根据您的需要,我可能会从GridBagLayout 开始。这可能看起来很复杂,但如果你将 UI 分解为单独的组件,专注于它们的个性化需求,它应该会变得更简单......

对于左边的面板...

我很想使用GridBagLayout,仅仅是因为它允许组件在那里使用首选尺寸,但仍然允许您设置网格状图案...

对于箭头按钮...

这变得有点复杂,但我会使用GridLayout(2, 3)(2 行,3 列)。这将需要在顶行的第一个和第三个位置添加一个填充面板,但仍保持按钮大小相同...

对于这个面板...

我很想使用GridBagLayout,因为它可以让您跨越行甚至将其再次拆分为两个单独的面板,左侧的控件位于GridLayout(2, 1) 中,而控件位于根据需要在BorderLayout 之类的地方...

对于“进度”面板...

我很想使用...GridBagLayout。主要是因为它允许您为进度条提供比标签更多的权重。

对于主面板...

我可能很想使用BorderLayout,在它自己的另一个面板上使用Clear Map,让它保持它的首选大小,在NORTH位置和CENTER中的地图面板甚至是GridBagLayout,具体取决于各个组件是什么......

【讨论】:

  • 这太棒了!!!!感谢您花时间如此详细地回答这个问题。 :)
  • 我终于做到了! screenshot。再次感谢。喜欢 GridBagLayout!
猜你喜欢
  • 2016-06-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多