如何使用 Java AWT/Swing 垂直对齐面板

Posted

技术标签:

【中文标题】如何使用 Java AWT/Swing 垂直对齐面板【英文标题】:how to vertically align panels withing Java AWT/Swing 【发布时间】:2019-02-13 09:03:58 【问题描述】:

我想知道究竟如何使用swing。我想对齐 3 个面板,使面板 1 位于面板 2 的顶部,然后面板 3 位于面板 3 的顶部。然后,这些面板中的每一个都将有自己的标签/按钮。

每一个都需要在面板内包含自己的标签/按钮。

【问题讨论】:

【参考方案1】:

使用GridBagLayoutGridLayout。首先看看Laying Out Components Within a Container

GridBagLayout

setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints();
gbc.weightx = 1;
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.gridwidth = GridBagConstraints.REMAINDER;

add(new ExamplePane(1), gbc);
add(new ExamplePane(2), gbc);
add(new ExamplePane(3), gbc);

GridLayout

setLayout(new GridLayout(0, 1));

add(new ExamplePane(1));
add(new ExamplePane(2));
add(new ExamplePane(3));

重要

两者之间存在显着差异,您需要阅读有关这两种布局的链接教程和支持文档,以了解它们的工作原理以及哪些可能最适合您的当前需求

【讨论】:

以上是关于如何使用 Java AWT/Swing 垂直对齐面板的主要内容,如果未能解决你的问题,请参考以下文章

如何解决 Java awt/swing 图像打印的滞后问题?

java awt;java applet;java swing分别是啥?他们之间有啥联系和区别?

14.1-全栈Java笔记: Java语言中GUI到底是神马鬼?| AWT | Swing

在 CSS Grid 中垂直对齐内容 [重复]

ScrollView swift 3中的垂直对齐图像

如何在引导程序中使用垂直对齐