Java GUI 实现登录界面

具体效果图:

在这里插入图片描述

详细代码:

package java_gui;import java.awt.Color;
import java.awt.Container;
import java.awt.Cursor;
import java.awt.Font;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPasswordField;
import javax.swing.JRootPane;
import javax.swing.JTextField;public class Login extends JFrame {private static final long serialVersionUID = -6788045638380819221L;//用户名private JTextField ulName;//密码private JPasswordField ulPasswd;//小容器private JLabel j1;private JLabel j2;private JLabel j3;private JLabel j4;//小按钮private JButton b1;private JButton b2;private JButton b3;//复选框private JCheckBox c1;private JCheckBox c2;//列表框private JComboBox<String> cb1;/*** 初始化QQ登录页面* */public Login() {//设置登录窗口标题this.setTitle("QQ登录");//去掉窗口的装饰(边框)//  this.setUndecorated(true);//采用指定的窗口装饰风格this.getRootPane().setWindowDecorationStyle(JRootPane.NONE);//窗体组件初始化init();this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置布局为绝对定位this.setLayout(null);this.setBounds(0, 0, 355, 265);//设置窗体的图标Image img0 = new ImageIcon("D:/logo.png").getImage();this.setIconImage(img0);//窗体大小不能改变this.setResizable(false);//居中显示this.setLocationRelativeTo(null);//窗体显示this.setVisible(true);}/*** 窗体组件初始化* */public void init() {//创建一个容器,其中的图片大小和setBounds第三、四个参数要基本一致(需要自己计算裁剪)Container container = this.getContentPane();j1 = new JLabel();//设置背景色Image img1 = new ImageIcon("D:/bgimg.png").getImage();j1.setIcon(new ImageIcon(img1));j1.setBounds(0, 0, 355, 265);//qq头像设定j2 = new JLabel();Image img2 = new ImageIcon("D:/hdimg.png").getImage();j2.setIcon(new ImageIcon(img2));j2.setBounds(40, 95, 50, 53);//用户名输入框ulName = new JTextField();ulName.setBounds(100, 100, 150, 20);//注册账号j3 = new JLabel("注册账号");j3.setBounds(260, 100, 70, 20);//密码输入框ulPasswd = new JPasswordField();ulPasswd.setBounds(100, 130, 150, 20);//找回密码j4= new JLabel("找回密码");j4.setBounds(260, 130, 70, 20);//记住密码c1 = new JCheckBox("记住密码");c1.setBounds(105, 155, 80, 15);//自动登陆c2 = new JCheckBox("自动登陆");c2.setBounds(185, 155, 80, 15);//用户登陆状态选择cb1 = new JComboBox<String>();cb1.addItem("在线");cb1.addItem("隐身");cb1.addItem("离开");cb1.setBounds(40, 150, 55, 20);//登陆按钮b1 = new JButton("登录");//设置字体和颜色和手形指针b1.setFont(new Font("宋体", Font.PLAIN, 12));b1.setForeground(Color.RED);b1.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));b1.setBounds(280, 200, 65, 20);//给按钮添加b1.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {String cmd = e.getActionCommand();if("登录".equals(cmd)) {String username = ulName.getText();String userpassword = ulPasswd.getText();if(username.equals("tskk") && userpassword.equals("123456")) {JOptionPane.showConfirmDialog(null, "登录成功");} else {JOptionPane.showConfirmDialog(null, "登录失败");}}}});//多账号b2 = new JButton("多账号");b2.setBounds(5, 200, 75, 20);//设置b3 = new JButton("设置");b3.setBounds(100, 200, 65, 20);//所有组件用容器装载j1.add(j2);j1.add(j3);j1.add(j4);j1.add(c1);j1.add(c2);j1.add(cb1);j1.add(b1);j1.add(b2);j1.add(b3);container.add(j1);container.add(ulName);container.add(ulPasswd);}public static void main(String[] args) {new Login();}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/531018.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言 实现登录注册功能

文章目录加载动画实验结果图实验代码加载动画 #include<iostream> #include<windows.h> using namespace std;int main(){cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;cout.widen(65);co…

Java小案例(二) 用数组实现增删查改排序

文章目录案例一案例二案例三案例四案例五案例一 Student.Java package curd;public class Student {private String stuid;private String name;private int chinese;private int math;private int english;private int avg;private int sum;public int getAvg() {return avg;…

有趣的一行代码

文章目录爱心曼德勃罗集合打印99乘法表实现快速排序禅语漫画迷宫爱心 print(\n.join([.join([(❤❤❤❤❤❤❤❤❤❤❤❤[(x-y)%12]if((x*0.05)**2(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<0 else )for x in range(-30,30)])for y in range(15,-15,-1)]))效果图&#xff1…

JDBC实现图书管理小案例

文章目录项目文件结构项目运行效果项目详细代码项目文件下载相关案例案例一案例二案例三案例四案例五案例六案例七案例八项目文件结构 项目运行效果 项目详细代码 JDBCUtils.java package jdbc;import java.sql.*; import com.mysql.jdbc.Driver;public class JDBCUtils {pri…

基于TCP原理,采用Socket通信技术,实现聊天室

文章目录案例一案例二案例三案例四案例五相关案例案例一 Client.java package SocketCode;import java.awt.Color; import java.awt.Font; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener;import java.io.*; import …

HTML+CSS+JS 实现登录注册界面

文章目录案例一 滑动样式案例二 滑动样式案例三 动态样式案例四 普通样式案例五 滑动样式案例六 普通样式具体怎么获取呢&#xff1f;案例一 滑动样式 login.html <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8">…

html+css 小案例(一)

文章目录点击下载index.html <!DOCTYPE html> <html lang"ch"> <head><meta charset"UTF-8"><title>Demo_Test</title><link rel"stylesheet" href"css/Dec.css"> </head> <body…

HTML+CSS+JS 表白代码

文章目录案例一 爱你到天昏地暗案例二 带有音乐的表白代码案例三 带有图片旋转的表白案例源码案例一 爱你到天昏地暗 <html> <style type"text/css"> <!-- .STYLE1 {font-size: medium} --> </style> <center><br><br>…

Linux常用命令与基本操作、填空题、简答题

文章目录基本知识点基本操作叙述什么是shell?重启虚拟机网络分区查看当前进程查看主机名重启关机查看IP地址文件搜索挂载查看网络配置linux系统中Vi的三种模式磁盘分区查看硬盘信息df&#xff0c;fdisk&#xff0c;lsblk区别进程用户用户信息查看用户密码信息修改密码添加用户…

客户端与服务器(C/S架构与B/S架构)、AJax学习

文章目录HTTP请求与服务器客户端与服务器1.C/S架构与B/S架构2.web资源介绍3.资源访问流程HTTP协议1.什么是协议&#xff1f;2.什么是HTTP协议3.HTTP组成部分4.请求的发送方式什么是Ajax技术Ajax可以做什么&#xff1f;伪造AjaxHTTP请求与服务器 客户端与服务器 1.C/S架构与B/…

前端必会技巧

文章目录点击输入框提示信息防止别人盗取视频设置输入边框透明按钮跳转a标签如何具有bootstra按钮样式formData的使用boostrap上传样式jq获取input标签的值jq获取最近一个td标签的值css设置几个div中的图片保持在一条水平线使div居中canvas 网页背景 粒子鼠标跟随磁力登录界面添…

linux基础必备

文章目录Linux系统中常用目录结构Linux下如何从普通用户切换到root用户Linux系统常用命令Linux系统文件中相关指令Linux查看开机自启动服务Linux常见服务列表Linux关闭某些服务&#xff08;临时关闭&#xff09;Linux关闭服务开机自启动Linux中在屏幕输入一句话Linux查看系统进…

Hadoop搭建集群中输入hdfs namenode -format格式化节点时,提示:hdfs: command not found 解决办法

分析原因&#xff1a; hadoop的安装路径没有加入到当前路径中 解决办法&#xff1a; 方法1&#xff1a; 进入hadoop的安装目录&#xff0c;在执行hadoop命令时在前面加上&#xff1a;./bin ./sbin 方法2: 进入/etc/profile文件中添加hadoop的安装路径 sudo vim /etc/profile添…

Linux高级编程实验(30个)

文章目录1&#xff09;输出Linux下的c也不是太难嘛&#xff01;在linux下编辑&#xff0c;编译&#xff0c;运行2&#xff09;编写一个简单地c语言程序,根据输入的两个整数求平均值并且在终端输出&#xff0c;通过gcc编译器得到它的汇编程序文件。3&#xff09;编写一个c语言程…

登录界面验证码的实现

文章目录Javaweb实现验证码前端后台Springboot添加验证码项目结构依赖控制类前端页面效果图Javaweb实现验证码 前端 添加样式 <meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0, minimum-scale1.…

Javaweb MVC设计模式、Modle发展史、项目分层和三层架构

文章目录MVC设计模式MVC的目的MVC举例jspservletjavabean模式MVC的优点MVC的缺点Modle 发展史项目分层三层架构MVC设计模式 MVC模式&#xff08;Model-View-Controller&#xff09;是软件工程中的一种软件架构模式&#xff0c;把软件系统分为三个基本部分&#xff1a;模型&…

HTML表格和HTML表单

HTML 表格 表格由 <table> 标签来定义每个表格均有若干行&#xff08;由 <tr> 标签定义&#xff09;&#xff0c;每行被分割为若干单元格&#xff08;由 <td> 标签定义&#xff09; 字母 td 指表格数据&#xff08;table data&#xff09;&#xff0c;即数据…

解决虚拟机没有ens33网卡的问题

话不多说&#xff0c;直接操作 解决办法 1.在终端中输入: sudo vim /etc/network/interfaces进入interfaces文件后&#xff0c;然后输入以下代码&#xff0c;然后保存退出 auto ens33 iface ens33 inet dhcp 2.重启虚拟机 输入ifconfig命令&#xff0c;成功启动ens33网卡

HDFS上传文件命令报错org.apache.hadoop.ipc.RemoteException(java.io.IOException)

作为作者&#xff0c;强烈不建议进行格式化hadoop&#xff0c;毕竟开发数据是最为重要的&#xff01; Hadoop 3.1 hdfs dfs -put /源文件路径 /目的文件路径解决方案 第一步&#xff1a;停止主节点&#xff08;Master&#xff09;和子节点服务&#xff08;Slave&#xff09; …