如何在 Java 中设置组件的垂直对齐方式?
对于垂直对齐方式,创建一个框架并使用 BoxLayout 管理器设置布局 −
JFrame frame = new JFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(new BoxLayout(frame.getContentPane(), BoxLayout.Y_AXIS));
在上面,我们已经设置 BoxLayout 来设置对齐方式,因为这是一个布局管理器,允许将多个组件垂直或水平布局。我们已经在这里设置了垂直对齐方式 −
BoxLayout.X_AXIS
以下是设置组件垂直对齐方式的一个示例 −
示例
package my; import java.awt.Component; import java.awt.Dimension; import javax.swing.BorderFactory; import javax.swing.BoxLayout; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; public class SwingDemo { public static void main(String[] args) { JFrame frame = new JFrame(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(new BoxLayout(frame.getContentPane(), BoxLayout.Y_AXIS)); JPanel panel = new JPanel(); JButton btn1 = new JButton("Clear"); JButton btn2 = new JButton("Reset"); JButton btn3 = new JButton("Submit"); panel.add(btn1); panel.add(btn2); panel.add(btn3); panel.setAlignmentX(Component.LEFT_ALIGNMENT); panel.setPreferredSize(new Dimension(100, 500)); panel.setMaximumSize(new Dimension(100, 500)); panel.setBorder(BorderFactory.createTitledBorder("demo")); frame.getContentPane().add(panel); frame.setSize(550, 300); frame.setVisible(true); } }
输出
广告