仿QQ登入界面增加反应
上次,咋们做了一个仿QQ登入界面,现在咋们的目标就是让这个界面上的组件有所反应。
这个交互功能需要监听器这个方法来实现。
监听器的实现三步骤
1.事件源:当前动作所发生的组件。
2.监听器:动作方法监听器(监听器有很多类型,今天使用的是动作监听器)
3.绑定事件处理类
//数据类型:1.基本类型(8种) 2.引用类(自定义类型):类(class),接口(interface),数组
蓝色部分为上节课内容,黑色为续写内容
public class Loginrun {
public static void main(String[] args) {
Loginrun lo = new Loginrun();
lo.showUI();
}
public void showUI(){
javax.swing.JFrame jf = new javax.swing.JFrame();
jf.setSize(500, 450);
jf.setTitle("登录界面");
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(3);
java.awt.FlowLayout flow = new java.awt.FlowLayout();
jf.setLayout(flow);
javax.swing.ImageIcon image = new javax.swing.ImageIcon ("D:\\java\\图片素材库\\1.jpg");
javax.swing.JLabel jla3 = new javax.swing.JLabel(image);
jf.add(jla3);
java.awt.Dimension dim3 = new java.awt.Dimension(500,150);
jla3.setPreferredSize(dim3);
jf.add(jla3);
javax.swing.JLabel jla1 = new javax.swing.JLabel("账号:");
jf.add(jla1);
javax.swing.JTextField jtf1 = new javax.swing.JTextField();
//Dimension
java.awt.Dimension dim1 = new java.awt.Dimension(370,30);
jtf1.setPreferredSize(dim1);
jf.add(jtf1);
javax.swing.JLabel jla2 = new javax.swing.JLabel("密码:");
jf.add(jla2);
javax.swing.JTextField jtf2 = new javax.swing.JTextField();
//Dimension
java.awt.Dimension dim2= new java.awt.Dimension(370,30);
jtf2.setPreferredSize(dim2);
jf.add(jtf2);
javax.swing.JButton jbu1 = new javax.swing.JButton("登录");
jf.add(jbu1);
javax.swing.JButton jbu2 = new javax.swing.JButton("新用户注册");
jf.add(jbu2);
javax.swing.JButton jbu3 = new javax.swing.JButton("取消");
jf.add(jbu3);
jf.setVisible(true);
//接口不能直接创建对象,需要重新定义类去继承接口,在子类中重写接口中的抽象方法。
//给登录按钮添加动作监听器
ButtonListener listener = new ButtonListener();
jbu1.addActionListener(listener);
listener.jtxf1=jtf1;
listener.jtxf2=jtf2;
}
}
//导入库中的类
import java.awt.event.ActionListener;
//事件处理类
//继承接口格式:public class 子类 implements 接口,接口...{}
//继承接口一定要在子类中重写所有的抽象方法
public class ButtonListener implements ActionListener{
//定义原始账号,密码 只能用字符串
public String user = "123"
public String code="123"
//咋们要设置一个文本框去保存传递过来的文本框对象
public javax.swing.JTextField jtxf1;
public javax.swing.JTextField jtxf2;
// 事件响应方法(设计响应功能)
public void actionPerformed(ActionEvent e){
//获取账号密码文本框
String userName = jtxf1.getText();
String userCode = jtxf2.getText();
//验证账号
if(user.equals(userName)&&code.equals(userCode)){
showUI1();}
else{showUI2();}
}
// 这里加入两个弹窗 设置两个窗体。
public void showUI1(){
javax.swing.JFrame jf2 = new javax.swing.JFrame();
jf2.setSize(500,400);
jf2.setLocationRelativeTo(null);
jf2.setDefaultCloseOperation(3);
javax.swing.JButton jbu1 = new javax.swing.JButton ("登入成功");
jf2.add(jbu1);
jf2.setVisible(true);
}
public void showUI1{
javax.swing.JFrame jf3 = new javax.swing.JFrame();
jf3.setSize(500,400);
jf3.setLocationRelativeTo(null);
jf3.setDefaultCloseOperation(3);
javax.swing.JButton jbu2 = new javax.swing.JButton ("登入失败");
jf3.add(jbu2);
jf3.setVisible(true);
}
}
仿QQ登入界面增加反应相关推荐
- Android(仿QQ登入+网易新闻)
文章目录 场景 内容: 效果 参考 场景 提示:基于期末作业开发+(自增轮播图) 自评:效果蛮丑的,功能都在,仅供参考! 内容: 一,引导页 1,设计引导页LogoActivity,添加引导页所需图片 ...
- java仿qq gui_Java仿QQ登入页面
1.[代码][Java]代码 package com.myqq.frame; import java.awt.BorderLayout; import java.awt.Color; import j ...
- 利用java知识做一个模拟qq登入模拟界面
qq模拟登入界面 一.设计概述 1.使用java所学知识,做一个qq登入模拟界面,如图所示. QQ登录界面整体可以看做一个容器窗口,使用JFrame容器来实现,从登录界面的布局效果和显示内容可以看出, ...
- java回车监听_java学习:给登入界面添加键盘监听,按回车键登入
折腾了很久,终于把登入界面的键盘监听加上了,内容很简单.其实想到的话也挺简单的,毕竟可以从鼠标监听事件推测过来. 假设我们是如下的登入界面: 我们需要对文本框进行监听,而不是对整个JFrame对象进行 ...
- android 仿qq修改头像,Qt:小项目仿QQ修改头像界面,技术点记录
最近写了一个修改头像功能的UI,布局参考了QQ目前的修改头像界面.如下图 这里主要说明一下两个地方的技术:1.头像图片上层的遮罩层,圆形外部为灰色,内部为全透明:2.上传图片宽高比例可以通过鼠标拖拽移 ...
- javaweb应用网站实现第三方QQ登入过程
腾讯开发文档入口 今天实现了web应用第三方QQ登入,由于我当时只看了开发文档中实现登入的流程,没有看SDK中的demo,所以SDK中的工具我没有用到.其实只要知道流程,完全可以不借助它的SDK也能实 ...
- python编辑用户登录界面_python编辑用户登入界面的实现代码
1.需求分析 登入界面需要达到以下要求: 系统要有登入和注册两个选项可供选择 系统要能够实现登入出错提示,比如账户密码错误等,用户信息保存在user_info.txt文件夹中 系统要能够进行登入错误次 ...
- python登陆界面代码_python编辑用户登入界面的实现代码
1.需求分析 登入界面需要达到以下要求: 系统要有登入和注册两个选项可供选择 系统要能够实现登入出错提示,比如账户密码错误等,用户信息保存在user_info.txt文件夹中 系统要能够进行登入错误次 ...
- java用户名检查数据库_登入界面账号密码是访问数据库,但登入问题时if判断时就是执行不了...
回复 2楼 林月儿 我按着你的方法试了下,可还是这个判断不能执行 if(password.equals(drmm.getText())){ view.setTex ...
最新文章
- Linux-chown and chmod 命令的使用
- SAP 既是供应商,又是客户-互清(清账 F110中使用)
- Linux 利用yum源安装subversion(svn)客户端
- 让你的PHP4和PHP5共存
- mysql数据库设计中的14个技巧
- 60秒计时器的仿真电路_基于伏秒平衡的同步整流方案探讨
- 【转载】输出二进制 C
- mariadb允许远程访问权限
- php中cookie存的是什么,PHP中Cookie存在的作用和用法
- python的request请求401_Python模拟HTTPS请求返回HTTP 401 unauthorized错误
- F5/LVS/Nginx/HAProxy硬软件级网络负载均衡介绍
- pytorch图片数据归一化,通常传入transforms.Normalize(mean,std,inplace=False)中的mean和std是如何获取的?
- cmake 交叉编译_如何使用CMake编译RTT微内核
- C++day02 学习笔记
- 优雅的编写多线程——原子量
- 支付宝小程序 alipays协议链接跳转
- 医学应用计算机答案,医学计算机应用试题及答案大全02.doc
- 计算机装饰表格123教学设计,计算机基础培训123.doc
- 计算机win10内存,win10系统电脑可用内存异常的解决方法
- SDN控制器OpenDaylight简介