Java Swing 是一个用于构建图形用户界面(GUI)的Java库,它提供了丰富的组件和工具,用于创建交互式的桌面应用程序。Swing 是 Java Foundation Classes(JFC)的一部分,它是 Java 平台的一种标准用户界面工具包。
Swing 提供了丰富的组件,包括按钮、标签、文本框、列表、表格等,以及布局管理器和事件处理机制等工具,使开发人员能够轻松创建复杂的用户界面。Swing 还支持可定制的外观和主题,开发人员可以根据需要自定义界面的外观和风格。
随着 Java 平台的发展,Swing 成为了 Java 桌面应用程序开发的主要选择。它在业界得到了广泛应用,并成为了许多商业和开源项目的基础。虽然近年来,JavaFX 和其他现代的 GUI 框架也出现了,但 Swing 仍然是许多现有 Java 桌面应用程序的重要组成部分,并且仍然得到一定程度的支持和维护。
以下为一个简单的 Java Swing UI 窗口:
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class SimpleUI {
public static void main(String[] args) {
// 创建顶层容器 JFrame
JFrame frame = new JFrame("简单UI示例");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置关闭操作
// 创建面板 JPanel
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS)); // 设置面板布局为垂直方向
// 创建标签 JLabel
JLabel label = new JLabel("请输入姓名:");
Font font = new Font(label.getFont().getName(), Font.PLAIN, 32);
label.setFont(font);
panel.add(label); // 将标签添加到面板
// 创建文本框 JTextField
JTextField textField = new JTextField(10); // 指定文本框的列数
panel.add(textField); // 将文本框添加到面板
// 添加垂直间距
panel.add(Box.createVerticalStrut(10));
// 创建按钮 JButton
JButton button = new JButton("点击我");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String name = textField.getText(); // 获取文本框的内容
label.setText("你好," + name + "!");
}
});
button.setFont(font);
panel.add(button); // 将按钮添加到面板
// 将面板添加到顶层容器
frame.getContentPane().add(panel);
// 设置顶层容器大小
frame.setSize(800, 600);
// 将窗口定位在屏幕的中央位置
frame.setLocationRelativeTo(null);
// 设置顶层容器可见
frame.setVisible(true);
}
}
运行后展示效果如下: