java通过JFrame做一个登录系统的界面完整代码示例

下面我将为你详细讲解如何使用Java通过JFrame做一个登录系统的界面。

前提准备

在开始编写代码之前,我们需要先确保已经安装好了Java开发环境,推荐使用Eclipse开发工具。

第一步:搭建界面

在Java中,JFrame是我们常用的界面设计类。我们首先需要实例化一个JFrame类,并为其设置一些基本的属性,比如窗口大小、标题等。示例如下:

import javax.swing.*;
import java.awt.*;

public class LoginFrame extends JFrame {

    public static void main(String[] args) {
        LoginFrame frame = new LoginFrame();
        frame.setVisible(true);
    }

    public LoginFrame() {
        setTitle("登录窗口");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(400, 300);
        setLocationRelativeTo(null);

        JPanel panel = new JPanel();
        panel.setLayout(null);

        JLabel accountLabel = new JLabel("账号:");
        accountLabel.setBounds(50, 50, 50, 30);
        panel.add(accountLabel);

        JTextField accountText = new JTextField();
        accountText.setBounds(110, 50, 200, 30);
        panel.add(accountText);

        JLabel passwordLabel = new JLabel("密码:");
        passwordLabel.setBounds(50, 100, 50, 30);
        panel.add(passwordLabel);

        JPasswordField passwordField = new JPasswordField();
        passwordField.setBounds(110, 100, 200, 30);
        panel.add(passwordField);

        JButton loginButton=new JButton("登录");
        loginButton.setBounds(150, 170, 100, 30);
        panel.add(loginButton);

        setContentPane(panel);
    }
}

在这个示例代码中,我们新建了一个名为LoginFrame的类,并继承了JFrame类。我们给这个类添加了一个构造方法,用于初始化窗口的基本属性,并向窗口中添加了一些组件,包括标签、文本框和按钮。

第二步:添加事件处理

在第一步的代码中,我们已经向窗口中添加了一个按钮组件。现在我们需要为这个按钮添加事件处理函数,使用户能够通过这个按钮完成登录操作。

Java中,我们通常使用ActionListener接口来实现按钮的点击事件。示例如下:

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class LoginFrame extends JFrame {

    public static void main(String[] args) {
        LoginFrame frame = new LoginFrame();
        frame.setVisible(true);
    }

    public LoginFrame() {
        setTitle("登录窗口");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(400, 300);
        setLocationRelativeTo(null);

        JPanel panel = new JPanel();
        panel.setLayout(null);

        JLabel accountLabel = new JLabel("账号:");
        accountLabel.setBounds(50, 50, 50, 30);
        panel.add(accountLabel);

        JTextField accountText = new JTextField();
        accountText.setBounds(110, 50, 200, 30);
        panel.add(accountText);

        JLabel passwordLabel = new JLabel("密码:");
        passwordLabel.setBounds(50, 100, 50, 30);
        panel.add(passwordLabel);

        JPasswordField passwordField = new JPasswordField();
        passwordField.setBounds(110, 100, 200, 30);
        panel.add(passwordField);

        JButton loginButton = new JButton("登录");
        loginButton.setBounds(150, 170, 100, 30);
        loginButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                String account = accountText.getText();
                String password = String.valueOf(passwordField.getPassword());
                if ("admin".equals(account) && "123456".equals(password)) {
                    JOptionPane.showMessageDialog(null, "登录成功");
                } else {
                    JOptionPane.showMessageDialog(null, "账号或密码错误");
                }
            }
        });
        panel.add(loginButton);

        setContentPane(panel);
    }
}

在这个示例代码中,我们在按钮组件上添加了一个ActionListener接口的实现,并在实现类的actionPerformed方法中处理了登录事件。具体来说,我们通过getText()和getPassword()方法获取了两个文本框的内容,然后与预设的账号和密码进行比较,如果相等则提示登录成功,否则提示账号或密码错误。

这样,我们就完成了一个简单的基于JFrame的登录窗口。当然,这只是一种基础的实现方法,你可以根据实际需求选择不同的组件、布局方式和事件处理方式来实现你想要的效果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java通过JFrame做一个登录系统的界面完整代码示例 - Python技术站

(0)
上一篇 2023年5月24日
下一篇 2023年5月24日

相关文章

  • Sprint Boot @RequestMapping使用方法详解

    @RequestMapping是Spring Boot中的一个注解,它用于将HTTP请求映射到控制器方法上。在使用Spring Boot开发Web应用程序时,@RequestMapping是非常重要的。本文将详细介绍@RequestMapping的作用和使用方法,并提供两个示例说明。 @RequestMapping的作用 @RequestMapping的作用…

    Java 2023年5月5日
    00
  • JS+Struts2多文件上传实例详解

    JS+Struts2多文件上传实例详解 简介 在现代web应用中,文件上传功能变得越来越常见。本文将介绍如何使用JavaScript和Struts2框架实现多文件上传功能。 实现步骤 1. 在HTML中创建上传表单 首先,在HTML页面中创建文件上传表单。使用<input>元素来创建上传表单并指定type=”file”。此外,我们还需在form元…

    Java 2023年5月20日
    00
  • Jersey框架的统一异常处理机制分析

    Jersey框架是JavaEE官方提供的RESTful web服务框架,它提供了丰富的功能和易用的API,帮助开发人员快速构建RESTful web服务。在实际应用中,由于外部请求的多变性,我们难以避免出现各种异常情况。为了提高应用程序的健壮性和可维护性,Jersey框架提供了完善的异常处理机制。下面将结合具体案例,给大家详细讲解Jersey框架的统一异常处…

    Java 2023年5月19日
    00
  • A标签触发onclick事件而不跳转的多种解决方法

    当我们在HTML中使用标签时通常会使用它来跳转到其他页面。但是,如果我们希望在用户点击这个链接时触发一些功能,而不是跳转到其他页面,我们可以使用onclick事件。本文将介绍几种A标签触发onclick事件而不跳转的多种解决方法。 方法一:Javascript:void(0) 使用Javascript:void(0)作为标签的href值,它可以防止页面跳转,…

    Java 2023年6月15日
    00
  • JAVA IDEA入门使用手册(新手小白必备)

    JAVA IDEA入门使用手册(新手小白必备) 简介 本手册旨在帮助初学者快速入门Java IDEA开发工具,逐步了解Java开发流程、常用操作和调试技巧,从而更好地开发出高质量的Java应用程序。 安装 首先需要下载Java IDEA软件,可以从官网下载最新版本:https://www.jetbrains.com/idea/download/ 安装过程比较…

    Java 2023年5月23日
    00
  • php UEditor百度编辑器安装与使用方法分享

    PHP UEditor百度编辑器安装与使用方法分享 什么是PHP UEditor百度编辑器? PHP UEditor百度编辑器是一个基于JavaScript的所见即所得富文本编辑器,能够在Web浏览器中编辑HTML文本和其他富媒体,如照片和视频。它是一个轻量级、高度定制的编辑器,非常适合PHP开发人员集成到他们的网站中。 安装PHP UEditor百度编辑器…

    Java 2023年6月15日
    00
  • Java cglib为实体类(javabean)动态添加属性方式

    Java cglib是一个强大的代码生成库,它可以在运行时创建Java类的动态代理。借助cglib,我们可以为实体类动态添加属性。以下是添加实体类属性的详细攻略: 步骤一:添加cglib依赖 在项目的pom.xml中添加cglib依赖: <dependency> <groupId>cglib</groupId> <a…

    Java 2023年6月15日
    00
  • 在spring boot中使用java线程池ExecutorService的讲解

    下面就详细讲解一下“在springboot中使用java线程池ExecutorService”的完整攻略。 1. 概述 在应用程序中,我们通常需要进行一些异步的操作,例如发送邮件、短信通知等,这些操作不应该阻塞主线程的执行。Java中提供了线程池ExecutorService来帮助我们完成这些异步操作,它能够维护一定数量的线程来处理任务,避免了每次需要处理任…

    Java 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部