菜鸟学JAVA之事件

原创 2013年12月02日 19:16:28

我们通过JFrame可以构建出一个窗体,然而窗体的很多部分还得好好完善,比如说我们想通过点击相关的按钮,标签,来实现相关的功能。而这就需要用到事件。如果我们想完善窗口的布局,让它看上去更加美观。这就需要用到布局。而本篇,我们将给大家讲述的是事件的使用。


JAVA中的事件


java中的事件在“java.awt.event”与“javax.swing.event”中,一般我们通过使用java.awt.event就足够了。因为这个包中,有我们所需的ActionListener,MouseListener,MouseMotionListener等。
本文将介绍ActionListener的使用,因为其他事件的使用方法可以举一反三,因此不累述。
建议大家多查阅API:http://docs.oracle.com/javase/7/docs/api/

事件的使用


由于事件提供的是个接口,所以我们一般得利用接口的使用来来实现。

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

public class Jframe3 extends JFrame implements ActionListener {
        //通过实现接口来使用ActionListener
	JButton jb1,jb2,jb3;
	JLabel jl1;
	JPanel pan=new JPanel();
	
	Jframe3 (String s){
		super(s);
		this.setSize(200,200);
		this.setLocationRelativeTo(null);
		this.setContentPane(pan);
		
		jb1=new JButton("早上好");               //汉语
		jb1.addActionListener(this);             //加入监听
		jb2=new JButton("Good morning");         //英语
		jb2.addActionListener(this);
		jb3=new JButton("Guten Morgen");         //德语
		jb3.addActionListener(this);
		jl1=new JLabel();
		
		pan.add(jb1);
		pan.add(jb2);
		pan.add(jb3);
		pan.add(jl1);
		
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setVisible(true);
	}
	
	public void actionPerformed (ActionEvent e){
		//重写actionPerformed来实现相应的功能。
		if (e.getSource()==jb1)
			jl1.setText(jb1.getActionCommand());
		if (e.getSource()==jb2)
			jl1.setText(jb2.getActionCommand());
		if (e.getSource()==jb3)
			jl1.setText(jb3.getActionCommand());
	}
	
}
import java.awt.*;
import javax.swing.*;

public class abc {

	public static void main(String[] args) {
		Jframe3 jf =new Jframe3 ("%David_Loman%:早上好");
		
	}

}
我们通过派生一个新的JFrame类,同时使用ActionListener,完成了当我们点击不同按钮时,便签上显示不同的文字。
由此可以看出事件的使用有以下三步:
实现接口
public class Jframe3 extends JFrame implements ActionListener
加入监听
	jb1.addActionListener(this);             //加入监听
重写相关的方法
	public void actionPerformed (ActionEvent e){
		//重写actionPerformed来实现相应的功能。
		if (e.getSource()==jb1)
			jl1.setText(jb1.getActionCommand());
		if (e.getSource()==jb2)
			jl1.setText(jb2.getActionCommand());
		if (e.getSource()==jb3)
			jl1.setText(jb3.getActionCommand());
	}
以上便是事件的使用了。



版权声明:本文为博主原创文章,未经博主允许不得转载。

菜鸟学JAVA之JMenu

在java的可视化编程中,它亦提供了菜单栏相应的使用。 JAVA中的菜单 java中的菜单,可以通过引入java.swing来实现。 在java中菜单有如下三大组件:JMenuBar,JMenu...
  • u010262108
  • u010262108
  • 2013年12月02日 19:11
  • 5061

零基础到架构师 不花钱学JavaEE(基础篇)- 概述

Java简单来说是一门语言,Java能干什么? 网站:开发大,中,小型网站。 服务器端程序:企业级程序开发。 APP:Android的APP基本使用Java开发。 云:Hadoop就是使用Java...
  • longronglin
  • longronglin
  • 2016年06月24日 13:54
  • 2960

新手学习freemarker

copy自http://demojava.iteye.com/blog/800204  以下内容全部是网上收集:  FreeMarker的模板文件并不比HTML页面复杂多少,FreeMar...
  • oo191416903
  • oo191416903
  • 2017年03月06日 15:18
  • 407

菜鸟教程 Java 学习笔记 (基础教程)

1、Java 对象和类Java作为一种面向对象的语言,支持以下基本概念:多态、继承、封装、抽象、类、对象 实例、方法、重载。对象:对象是类的一个实例,有状态和行为。 类:类是一个模板,它描述一类对...
  • u010545480
  • u010545480
  • 2017年02月15日 16:28
  • 948

菜鸟学python-快速入门

两个提示符:主提示符“>>>”和次提示符“...”。 主提示符解释器用来告诉你它在等待你输入下一个语句,次提示符告诉你解释器正在等待你输入当前语句的其他部分。 print 用来输出变量的值。 >>>...
  • iAm333
  • iAm333
  • 2013年12月03日 17:20
  • 1147

从零到一 新手教程 - JAVA Spring MVC

简单明了的Spring MVC 基础教学.  该简单工程的功能流程 : 1. 打开一个 jsp 页面输入必要的信息     2.  将输入的信息存储到 obejct 中    3. 将存储在 obje...
  • YtdxYHZ
  • YtdxYHZ
  • 2016年06月07日 04:12
  • 3555

菜鸟Java使用Netty

下载下来,搜索半天,如何使用Netty。。。。。。。。。。。网上找不到一篇类似的文章。对新手真是巨大的创伤啊! 还下载了Maven。现在还不知道这个东西干嘛的。好像对我使用Natty一点帮助都没有...
  • yulinxx
  • yulinxx
  • 2016年03月23日 10:23
  • 1895

菜鸟学JAVA之环境变量

环境变量 相信大家已经把JDK安装好了,可是,问题在于我们现在依然无法编译java文件。因为没有我们还没有设置好环境变量。那么环境变量是什么呢?这个我也不是很清楚。但是它就是有这样一回事。我想今后我这...
  • u010262108
  • u010262108
  • 2013年12月09日 00:06
  • 1181

菜鸟学JAVA之JFrame

JFrame是JAVA中可视化窗体,从这出发我们可以学习到很多东西。我们会学习到JFrame的一些方法。如果对这些方法不了解的话,可以通过查阅API文件,获取其使用方法。 JDK7的API:http:...
  • u010262108
  • u010262108
  • 2013年12月01日 21:36
  • 5728

原创:从零开始,微信小程序新手入门宝典《一》

为了方便大家了解并入门微信小程序,我将一些可能会需要的知识,列在这里,让大家方便的从零开始学习; 一:微信小程序的特点 张小龙:张小龙全面阐述小程序,推荐通读此文; 小程序是...
  • AAASai_
  • AAASai_
  • 2017年01月06日 12:03
  • 3455
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:菜鸟学JAVA之事件
举报原因:
原因补充:

(最多只允许输入30个字)