21xrx.com
2024-11-08 22:07:36 Friday
登录
文章检索 我的文章 写文章
使用Java编写图形用户界面:实现简单的登录界面
2023-06-14 07:02:30 深夜i     --     --
Java GUI Swing

对于Java开发者来说,编写图形用户界面(GUI)是一个基础,也是必须掌握的技能之一。本文将分享如何使用Java Swing创建一个简单的登录界面。

在开始之前,我们需要先了解一下Swing。Swing是Java平台的GUI工具包,它提供了一组用于创建GUI界面的组件和布局管理器。通过使用Swing,我们可以快速、易于维护地创建GUI应用程序。现在让我们来看一下如何使用Swing来创建一个简单的登录界面。

首先,我们需要创建一个JFrame窗口,并设置窗口的大小、标题和关闭方式。代码如下:


import javax.swing.*;

public class LoginDemo {

  public static void main(String[] args) {

    JFrame frame = new JFrame("登录界面");

    frame.setSize(300, 200);

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    frame.setVisible(true);

  }

}

运行程序,会弹出一个空白的窗口,如下图所示:

![image](https://user-images.githubusercontent.com/57786456/135071958-8c6b0fef-7e8e-467a-bec5-6d4f251d71f1.png)

接下来,我们需要在窗口中添加一些组件,例如标签、文本框、按钮等。在这个例子中,我们需要一个标签用于显示用户名、一个文本框用于输入用户名、一个标签用于显示密码,一个密码框用于输入密码和一个按钮用于提交登录信息。代码如下:


import javax.swing.*;

public class LoginDemo {

  public static void main(String[] args) {

    JFrame frame = new JFrame("登录界面");

    frame.setSize(300, 200);

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    // 创建用户名标签和文本框

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

    JTextField userText = new JTextField(20);

    // 创建密码标签和密码框

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

    JPasswordField passwordText = new JPasswordField(20);

    // 创建登录按钮

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

    // 创建一个用于放置组件的面板,并添加组件

    JPanel panel = new JPanel();

    panel.add(userLabel);

    panel.add(userText);

    panel.add(passwordLabel);

    panel.add(passwordText);

    panel.add(loginButton);

    // 将面板添加到窗口中,并显示窗口

    frame.add(panel);

    frame.setVisible(true);

  }

}

运行程序,我们会得到一个包含组件的窗口,如下图所示:

![image](https://user-images.githubusercontent.com/57786456/135071968-c59c7360-35af-4536-8277-4a66f451c26a.png)

现在我们已经成功创建了一个简单的登录界面,但是目前按钮还没有绑定任何操作。接下来,我们需要给按钮添加一个事件监听器,用于处理登录操作。代码如下:


import javax.swing.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

public class LoginDemo {

  public static void main(String[] args) {

    JFrame frame = new JFrame("登录界面");

    frame.setSize(300, 200);

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    // 创建用户名标签和文本框

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

    JTextField userText = new JTextField(20);

    // 创建密码标签和密码框

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

    JPasswordField passwordText = new JPasswordField(20);

    // 创建登录按钮

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

    // 为登录按钮添加事件监听器

    loginButton.addActionListener(new ActionListener() {

      public void actionPerformed(ActionEvent e) {

        String username = userText.getText();

        String password = new String(passwordText.getPassword());

        if (username.equals("admin") && password.equals("admin")) {

          JOptionPane.showMessageDialog(null, "登录成功!");

        } else {

          JOptionPane.showMessageDialog(null, "用户名或密码错误!");

        }

      }

    });

    // 创建一个用于放置组件的面板,并添加组件

    JPanel panel = new JPanel();

    panel.add(userLabel);

    panel.add(userText);

    panel.add(passwordLabel);

    panel.add(passwordText);

    panel.add(loginButton);

    // 将面板添加到窗口中,并显示窗口

    frame.add(panel);

    frame.setVisible(true);

  }

}

运行程序,我们已经可以通过测试用户名和密码成功登录或登录失败,如下图所示:

![image](https://user-images.githubusercontent.com/57786456/135071975-21ce27cf-2fed-4a9b-800d-6f9814d10413.png)

现在我们已经成功创建了一个带有简单功能的登录界面。在我们掌握了Swing的基本概念之后,我们可以使用它来创建更加复杂的GUI应用程序。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复