【问题标题】:Java - Multiple components above the other (GUI)Java - 多个组件之上(GUI)
【发布时间】:2024-06-19 02:35:02
【问题描述】:

我想制作一个具有多个组件的 JFrame - 它应该如下所示:

  • 以一切为中心
  • GridLayout 可滚动(如果 x 是一个巨大的数字)

我应该使用什么布局?如何尽可能减少它?

提前致谢!

【问题讨论】:

    标签: java swing layout-manager


    【解决方案1】:

    您并没有真正提供足够的信息,但您提供的信息在我看来就像 BorderLayout —— NORTH 部分中的图像,CENTER 中的 GridLayout,以及 SOUTH 中带有您的 Label、TextField 和 Button 的面板。 CENTER 将随着框架的大小而缩小和增长。底部面板似乎有一个带有 y 轴的 BoxLayout,您可以在每个组件上设置 x 轴居中。

    【讨论】:

    • 底部面板可能是GridLayout(3,1)
    • 是的,唯一的问题是 CENTER 中的 GridLayout 不可滚动 - 我该如何解决?
    • 把GridLayout放在一个JPanel里,把JPanel放在一个ScrollPanel里
    • 查看 JScrollPane 的 java 文档 - 基本上,如果 JScrollPane 中包含的面板包含使其大于为 JScrollPane 设置的大小的内容,它允许您相应地滚动。