Java中三种常用布局方式小结
更新时间:2025年02月07日 10:51:06 作者:徒步僧
在Java Swing和JavaFX中,布局管理器(Layout Managers)用于控制组件(如按钮、文本框等)在容器(如窗口、面板等)内的位置和大小,下面介绍Java Swing中常用的三种布局方式,需要的朋友可以参考下
1. FlowLayout(流式布局)
- 特点:
FlowLayout是最简单的布局管理器之一,它按照从左到右、从上到下的顺序排列组件。当一行放不下更多的组件时,会自动换行。 - 适用场景:适用于组件数量不多,且不需要复杂对齐的情况。
- 示例代码:
import javax.swing.*;
import java.awt.*;
public class FlowLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("FlowLayout Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
// 设置布局管理器为FlowLayout
frame.setLayout(new FlowLayout());
// 添加组件
frame.add(new JButton("Button 1"));
frame.add(new JButton("Button 2"));
frame.add(new JButton("Button 3"));
// 显示窗口
frame.setVisible(true);
}
}2. BorderLayout(边界布局)
- 特点:
BorderLayout将容器划分为五个区域:北(North)、南(South)、东(East)、西(West)和中心(Center)。每个区域最多只能放置一个组件。 - 适用场景:适用于需要在窗口的固定位置放置组件的情况,如标题栏、状态栏等。
- 示例代码:
import javax.swing.*;
import java.awt.*;
public class BorderLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("BorderLayout Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
// 设置布局管理器为BorderLayout
frame.setLayout(new BorderLayout());
// 添加组件
frame.add(new JButton("North"), BorderLayout.NORTH);
frame.add(new JButton("South"), BorderLayout.SOUTH);
frame.add(new JButton("East"), BorderLayout.EAST);
frame.add(new JButton("West"), BorderLayout.WEST);
frame.add(new JButton("Center"), BorderLayout.CENTER);
// 显示窗口
frame.setVisible(true);
}
}3. GridLayout(网格布局)
- 特点:
GridLayout将容器划分为一个矩形网格,每个组件占据一个单元格,所有单元格的大小相同。 - 适用场景:适用于需要将组件均匀分布在一个网格中的情况,如计算器界面。
- 示例代码:
import javax.swing.*;
import java.awt.*;
public class GridLayoutExample {
public static void main(String[] args) {
JFrame frame = new JFrame("GridLayout Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 200);
// 设置布局管理器为GridLayout,3行3列
frame.setLayout(new GridLayout(3, 3));
// 添加组件
for (int i = 1; i <= 9; i++) {
frame.add(new JButton("Button " + i));
}
// 显示窗口
frame.setVisible(true);
}
}总结
- FlowLayout:简单易用,适合组件较少且不需要复杂对齐的情况。
- BorderLayout:适用于需要在固定位置放置组件的情况。
- GridLayout:适用于需要将组件均匀分布在网格中的情况。
到此这篇关于Java中三种常用布局方式小结的文章就介绍到这了,更多相关Java常用布局方式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Spring MVC概念+项目创建+@RequestMappring案例代码
Spring MVC 是 Spring 提供的一个基于 MVC 设计模式的轻量级 Web 开发框架,本质上相当于 Servlet,这篇文章主要介绍了Spring MVC概念+项目创建+@RequestMappring,需要的朋友可以参考下2023-02-02
Java用Arrays.asList初始化ArrayList实例方法
在本篇文章里小编给大家分享的是关于Java中使用Arrays.asList初始化ArrayList的知识点内容,需要的朋友们参考下。2019-10-10
IDEA2021没有Web Application的解决过程及分析
在IDEA中创建WebApplication项目时,若AddFrameworksSupport无该选项,可先创建普通Java项目后添加框架支持,或通过快捷键打开registry,勾选javaee.legacy.project.wizard以启用,如解决您的问题,欢迎点赞支持2025-09-09
解决java.lang.IllegalArgumentException异常问题
这篇文章主要介绍了解决java.lang.IllegalArgumentException异常问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2024-04-04
SpringBoot ApplicationContext接口深入分析
ApplicationContext是Spring应用程序中的中央接口,由于继承了多个组件,使得ApplicationContext拥有了许多Spring的核心功能,如获取bean组件,注册监听事件,加载资源文件等2022-11-11


最新评论