`
fuziyi0405
  • 浏览: 4604 次
社区版块
存档分类
最新评论

QQ登录界面模仿和事件监听(上)

阅读更多
标题是QQ登录界面模仿和事件监听,不过我们要先从时间监听讲起。

这两块内有一定的相关性,加在一起太长,所以我分成(上)(下)两部分。

另,这次的QQ界面算做完基本的程度,QQ登录界面模仿与事件监听的应用(上),不过还有有待美化的地方,所以呢,敬请期待下次的完善版本,^ ^

OK,先来讲事件监听器。
啥是事件监听器?相信你已经了解了,要是忘记了基本概念先自行做个基本了解哦。

addActionListener(ActionListener);
addMouseListener(MouseListneer);
addMouseMOtionListener(MouseMOtionListener);
addKeyListener(KeyListener);
这四个监听器方法对应的事件接口分别是
ActionListener
MouseListner        
MouseMotionListener
KeyListener
这四个方法都很好记,顾名思义,分别是对按钮等组件,鼠标,键盘动作的事件方法。

整个事件发生的过程和产生调用行为的过程是这样子滴:
事件源发生动作--->监听器方法监听到--->实现你监听器里写的方法。

但是,与类不同,事件接口不能直接实例化,只能新建一个类实现这个接口,将这个类实例化,再调用这个类的监听方法。

实现接口的关键字是implements。

比如说?
比如说,我这个YOYOYO无任何修饰的登录界面程序。上面是输入框,下面是Password框,让它在被输入了我指定的值后点“YOYOYO”这个按钮,有所反应。



我这里指定的是上面的文本框输入yoyoyo,下面的密码框输入的是hehehe时在文本框中显示“输入正确”,否则输出密码不匹配。

所以监听器里的方法是这样的:

public void actionPerformed(ActionEvent e){
		//去除输入框输入的字符串给s
		String s=jtb1.getText();
		String s1=jpw1.getText();
		//比较s的值是否和yoyoyo一样
		if (s.equals("yoyoyo")&&s1.equals("hehehe")){
			jtb1.setText("输入正确");	
		}
		else{
			jtb1.setText("密码不匹配");	
		}
	}


你肯定注意到这里用了jtb1文本框和jpw1密码框这两个组件。它们是在继承addListener接口的一个类里的,要让这两个组件调取出的值,跟main主函数所在的类里定义的jtb文本框和jpw密码框的值相同,那么就需要用构造方法来传参啦。传参前也要首先声明jtb1和jpw1的类型。
如下:

//指向界面上的输入框对象
	private JTextField jtb1;
	private JPasswordField jpw1;
	//定义一个setText方法,传入jtb这个对象
	public void setText(JTextField jtb,JPasswordField jpw){
    	jtb1=jtb;
    	jpw1=jpw;
}


运行结果是这样的:







下面贴出全部代码:
import java.awt.Dimension;
import java.awt.FlowLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;



public class YOFrame extends JFrame{

	public static void main(String args[]){
        YOFrame YO=new YOFrame();
        YO.UI();
       
	}
	//设置初始界面的外形组件
	public void UI(){
		this.setTitle("YOYOYO");
		this.setSize(200,200);
		this.setLayout(new FlowLayout(FlowLayout.LEFT));
		this.setDefaultCloseOperation(3);//关闭窗体时,退出程序
		//给按钮添加监听器
		JButton jbu=new JButton("YOYOYO");
		YOInterface YOinter=new YOInterface();
		jbu.addActionListener(YOinter);
        
		JTextField jtb=new JTextField();
		jtb.setPreferredSize(new Dimension(100,30));
		//YOinter调用setText方法
		JPasswordField jpw=new JPasswordField();
		jpw.setPreferredSize(new Dimension(100,30));
		YOinter.setText(jtb,jpw);
		//将jbu,jtb控件加到界面上
		this.add(jbu);
		this.add(jtb);
		this.add(jpw);
		this.setVisible(true);
		
	
	}
}


import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JPasswordField;
import javax.swing.JTextField;


public class YOInterface   implements ActionListener{
	//指向界面上的输入框对象
	private JTextField jtb1;
	private JPasswordField jpw1;
	//定义一个setText方法,传入jtb这个对象
	public void setText(JTextField jtb,JPasswordField jpw){
    	jtb1=jtb;
    	jpw1=jpw;
    }
	public void actionPerformed(ActionEvent e){
		//去除输入框输入的字符串给s
		String s=jtb1.getText();
		String s1=jpw1.getText();
		
		//比较s的值是否和yoyoyo一样
		if (s.equals("yoyoyo")&&s1.equals("hehehe")){
			jtb1.setText("输入正确");	
		}
		else{
			jtb1.setText("密码不匹配");	
		}
	}
	
}



  • 大小: 5.1 KB
  • 大小: 8 KB
  • 大小: 5.1 KB
0
1
分享到:
评论

相关推荐

    android高仿QQ登陆界面Demo

    在Android平台上,开发...总的来说,"android高仿QQ登陆界面Demo"是一个很好的实践案例,它展示了如何在Android平台上实现复杂的UI设计和交互逻辑。无论是初学者还是经验丰富的开发者,都能从中受益,提升自己的技能。

    模仿QQ游戏登陆界面

    在本文中,我们将深入探讨如何模仿QQ游戏的登录界面,包括UI设计、前端开发、后端通信和用户体验等方面。 首先,我们需要了解QQ游戏登录界面的基本元素。这个界面通常包括一个背景图片,用户名和密码输入框,登录...

    Java-登陆注册系统(模仿qq登陆界面).docx

    Java 登陆注册系统(模仿QQ登陆界面) 本文将对 Java 登陆注册系统(模仿QQ登陆界面)的知识点进行详细说明。 Java Swing 组件 在本系统中,我们使用了多种 Java Swing 组件,包括: * `JFrame`:用于创建窗口 *...

    仿QQ登陆界面

    【仿QQ登陆界面】是一个项目,旨在模仿腾讯QQ的登录页面设计和功能,适用于初学者学习和实践Android应用开发。这个项目可能包含了基础的UI设计、事件处理以及数据验证等元素,是Android开发者提升用户体验理解和界面...

    仿QQ登陆界面 java.swing

    【标题】"仿QQ登陆界面 java.swing"指的是使用Java的Swing库创建的一个模仿QQ登录界面的项目。Swing是Java提供的一种用于构建图形用户界面(GUI)的工具包,它提供了丰富的组件和功能,使得开发者能够方便地设计出...

    简单仿照qq登陆界面基于Swift3.0

    总的来说,“简单仿照qq登陆界面基于Swift3.0”是一个学习Swift UI编程的好项目,它涵盖了基本的界面设计、自定义控件、事件处理和用户交互等多个方面。通过实践这个项目,开发者可以深入理解iOS应用开发的基本流程...

    android 模仿qq登录界面EditText下拉框记住账号和密码 editText+popupwindow+sqlite方式实现

    在Android开发中,模仿QQ登录界面并实现EditText下拉框记住账号和密码的功能是一项常见的需求。这个过程涉及到多个技术点,包括UI设计、输入框交互、数据存储等。以下是实现这一功能的关键步骤和相关知识点: 1. **...

    QQ登陆界面

    QQ登陆界面的实现是Java编程领域的一个典型应用,主要用于学习用户界面设计以及网络通信的基本原理。在这个项目中,我们利用Java语言构建了一个模仿QQ登录功能的界面,这涉及到多个技术点,包括图形用户界面(GUI)...

    xamarin Android 仿QQ登陆界面

    总结,"Xamarin.Android 仿QQ登陆界面"项目涵盖了Android UI设计、数据持久化、图片处理、事件处理、权限管理、安全性等多个方面,对于学习和提升Xamarin开发技能非常有帮助。在实际开发中,还需要考虑性能优化、...

    QQ登陆界面源代码,带有进度条

    为了模仿QQ的界面风格,开发者可能使用了自定义的外观和感觉(LookAndFeel)。Java提供了多种LookAndFeel,包括跨平台的金属LookAndFeel、WindowsLookAndFeel和 NimbusLookAndFeel。在这个例子中,开发者很可能选择...

    QQ注册登陆SWING界面模拟

    总的来说,"QQ注册登陆SWING界面模拟"涵盖了Swing GUI设计、事件监听、网络通信和数据安全等多个方面的知识点。通过这个项目,开发者可以深入理解Java GUI编程,提高网络编程技能,并对用户认证过程有更直观的认识。

    java 仿QQ 登录界面

    在提供的压缩包文件中,可能包含了不同版本的QQ登录界面源码,例如"99%高仿QQ5.0登陆界面源码.rar",这是一份接近于QQ5.0风格的登录界面实现。通过阅读和分析这些源码,你可以学习到如何模仿真实应用的界面设计,并...

    小QQ 学习Swift 界面篇

    "小QQ学习Swift界面篇"是一个针对初学者的教程,旨在帮助他们掌握如何使用Swift构建类似QQ的应用界面,包括登录界面和消息界面。在这个过程中,我们将探讨几个关键的知识点: 1. **Swift基础**:Swift是Apple为iOS...

    html仿QQ快速登录界面样式代码.zip

    此外,为了实现QQ登录界面的效果,可能还会用到一些前端库,比如jQuery,它简化了DOM操作、事件处理和动画效果的实现。如果压缩包包含jQuery,你需要理解如何引入库文件,并使用其提供的方法和函数。 总的来说,这...

    仿QQ登陆及主界面 java

    QQ作为一款流行的即时通讯软件,其用户界面设计简洁、功能强大,因此,模仿QQ界面可以作为学习和掌握GUI(图形用户界面)设计的一个实践案例。 首先,我们要了解Java中的Swing库或JavaFX库,它们是Java用于创建桌面...

    html+css+javascript模拟QQ登陆窗口效果

    在本文中,我们将深入探讨如何使用HTML、CSS和JavaScript来模拟QQ登录窗口的效果。QQ作为中国最流行的即时通讯工具之一,其...现在,你可以根据这些指导,打开提供的"js模拟QQ登陆窗效果"压缩包,开始你的实践之旅吧!

    安卓Android源码——高仿QQ登陆.zip

    "安卓Android源码——高仿QQ登陆.zip"是一个针对Android平台的源码项目,旨在帮助开发者学习和模仿QQ登录界面的设计与实现。这个压缩包包含了TestLogin模块,我们可以从中抽取出一系列关于Android开发的知识点。 1....

    android 开发---QQ登陆页面的源码

    在Android开发中,模仿QQ登录页面是一个常见的学习实践,它能帮助开发者深入理解用户界面设计、网络请求处理以及第三方SDK的集成。这个压缩包文件"TestLogin"很可能包含了一个完整的Android Studio项目,用于演示...

    仿QQ聊天系统(java swing)

    【标题】"仿QQ聊天系统(java swing)"是一个基于Java Swing开发的桌面应用程序,它模仿了QQ的基本功能,提供了用户间的实时通讯服务。Swing是Java标准版(J2SE)的一部分,用于构建图形用户界面(GUI)的库,具有...

Global site tag (gtag.js) - Google Analytics