从零开始学习Java Swing GUI编程:最新版教程完整解析

作者:绵阳麻将开发公司 阅读:21 次 发布时间:2025-08-10 06:41:13

摘要:Java Swing GUI编程是Java程序员需要掌握的一项基础技能,在Java程序的开发中,GUI界面占据了非常重要的角色。Java Swing是一个GUI库,它提供了一系列的类和方法,让程序员能够非常方便地创建并美化图形用户界面。本文将会以“”为题,为大家详细介绍Swing的基础知识和应用技...

Java Swing GUI编程是Java程序员需要掌握的一项基础技能,在Java程序的开发中,GUI界面占据了非常重要的角色。Java Swing是一个GUI库,它提供了一系列的类和方法,让程序员能够非常方便地创建并美化图形用户界面。本文将会以“”为题,为大家详细介绍Swing的基础知识和应用技巧。

从零开始学习Java Swing GUI编程:最新版教程完整解析

一、Swing简介

Swing是Java平台的一个GUI工具包,它最早是由Sun公司提供的,之后被Oracle继承。Swing是Java AWT的升级版本,与AWT不同的是,Swing是用纯Java编写的。Swing库中包含了众多的GUI组件,如按钮、标签、文本框、滚动条等。

Swing的优点主要有:

1、跨平台性。Swing是使用纯Java语言编写,它可以在任何Java平台上运行。

2、灵活性。Swing提供了一系列的GUI组件和布局管理器,让程序员可以很方便地创建和布局界面。

3、可定制性。Swing提供了足够细致的GUI组件定制选项,让程序员可以自由地定制各种GUI组件的外观和行为。

二、Swing组件的分类

1、容器组件

容器组件是Swing中最基本的组件,它用于容纳其他GUI组件。Swing中常用的容器组件有JFrame、JPanel、JDialog、JApplet等。其中,JFrame是最常用的容器组件,它是一个顶级窗口,通常用于作为应用程序的主窗口。

2、基本组件

Swing中的基本组件主要包括按钮、标签、文本框、密码框、文本区域、列表框、滚动条、进度条和菜单等。

3、容器和基本组件的组合

Swing还支持容器和基本组件的组合。常用的组合包括JScrollPane、JSplitPane、JTabbedPane等。这些组合可以增强容器和基本组件的功能,使其更加易于使用。

三、Swing布局管理器

Swing中提供了一系列的布局管理器,用于帮助程序员完成界面的布局。布局管理器主要包括流式布局管理器、边框布局管理器、网格布局管理器、卡片布局管理器、网格袋布局管理器等。

1、流式布局管理器

流式布局管理器是Swing中最基础的布局管理器。它按照组件的加入顺序来布局,并且不考虑组件的大小。如果需要控制组件的大小和位置,则需要使用其他布局管理器。

2、边框布局管理器

边框布局管理器按照上下左右和中间的位置来布局。它可以让程序员决定每个子组件的位置和大小。边框布局管理器最常用的方法是setPreferredSize(),因为它可以直接设置组件的大小。

3、网格布局管理器

网格布局管理器将容器划分为按行和列的网格,每个单元格只能容纳一个组件。网格布局管理器是Swing中最灵活的布局管理器之一,可以使程序员精确地控制组件的位置和大小。

4、卡片布局管理器

卡片布局管理器可以让程序员在同一空间内看到多个面板。它将多个面板组成一堆,用户可以通过单击卡片上的图标或标签来切换面板。

5、网格袋布局管理器

网格袋布局管理器将容器划分为网格袋,每个袋子可以容纳多个子元素。它允许程序员将组件分组,并将它们组织成水平和垂直方向的网格。

四、Swing GUI编程实例

下面我们通过一个简单的实例来介绍如何使用Swing编写GUI程序。这个实例是一个简单的登录窗口,包括用户名和密码的文本框、确认和取消按钮。

```

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class SwingDemo extends JFrame implements ActionListener {

// 定义组件

JLabel userLabel = new JLabel("用户名:");

JLabel passwordLabel = new JLabel("密 码:");

JTextField userField = new JTextField();

JPasswordField passwordField = new JPasswordField();

JButton loginButton = new JButton("登录");

JButton cancelButton = new JButton("取消");

public SwingDemo() {

// 设置窗口属性

setTitle("用户登录");

setSize(300, 200);

setLocationRelativeTo(null);

setResizable(false);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

// 设置布局

GridLayout gridLayout = new GridLayout(3, 2);

setLayout(gridLayout);

// 添加组件

add(userLabel);

add(userField);

add(passwordLabel);

add(passwordField);

add(loginButton);

loginButton.addActionListener(this);

add(cancelButton);

cancelButton.addActionListener(this);

}

public static void main(String[] args) {

// 显示窗口

SwingDemo swingDemo = new SwingDemo();

swingDemo.setVisible(true);

}

@Override

public void actionPerformed(ActionEvent e) {

// 处理按钮事件

if (e.getSource() == loginButton) {

String userName = userField.getText();

String password = String.valueOf(passwordField.getPassword());

JOptionPane.showMessageDialog(this, "用户名:" + userName + "\n" + "密码:" + password);

} else if (e.getSource() == cancelButton) {

System.exit(0);

}

}

}

```

代码中,我们先创建了一个SwingDemo类,继承JFrame,并实现ActionListener接口。在类中定义了一个登录窗口,包括用户名和密码的文本框、确认和取消按钮。然后我们在构造函数中设置了窗口的属性,如标题和大小,并设置了窗口的布局管理器为GridLayout。在添加组件时,我们为登录和取消按钮添加了事件监听器,当用户单击这两个按钮时,程序会执行对应的方法。

最后,在main方法中,我们实例化SwingDemo类,并将其设为可见状态。这样就完成了一个简单的Swing登录窗口的编写。

五、总结

本文为大家介绍了Java Swing GUI编程的基础知识和应用技巧。Swing作为Java平台的GUI工具包,具有跨平台性、灵活性和可定制性等优点。Swing中包含了大量的GUI组件和布局管理器,程序员可以使用这些组件和布局管理器来创建和布局界面。通过一个简单的实例,我们演示了如何使用Swing编写GUI程序。希望本文能帮助大家更好地理解Java Swing,进一步提高Java编程技能。

  • 原标题:从零开始学习Java Swing GUI编程:最新版教程完整解析

  • 本文链接:https://qipaikaifa.cn/zxzx/11401.html

  • 本文由深圳中天华智网小编,整理排版发布,转载请注明出处。部分文章图片来源于网络,如有侵权,请与中天华智网联系删除。
  • 微信二维码

    ZTHZ2028

    长按复制微信号,添加好友

    微信联系

    在线咨询

    点击这里给我发消息QQ客服专员


    点击这里给我发消息电话客服专员


    在线咨询

    免费通话


    24h咨询☎️:157-1842-0347


    🔺🔺 棋牌游戏开发24H咨询电话 🔺🔺

    免费通话
    返回顶部