Swing的事件处理合作机制包括的内容哪些内容

java事件处理机制原理
java事件处理机制原理
09-12-19 &匿名提问
无非就是 监听者模式去看看JAVA的设计模式就明白了
请登录后再发表评论!
swing是目前java中不可缺少的窗口工具组,是用户建立图形化用户界面(gui)程序的强大工具。java swing组件自动产生各种事件来响应用户行为。如当用户点击按钮或选择菜单项目时,swing组件会产生一个actionevent。swing组件会产生许多事件,如actionevents,changeevents,itemevents等,来响应用户的鼠标点击行为,列表框中值的改变,计时器的开始计时等行为。在java swing编程中,通过注册监听器, 可以监听事件源产生的事件,从而在事件处理程序中处理 所需要处理的用户行为。 java swing中处理各组件事件的一般步骤是: 1.  新建一个组件(如jbutton)。 2.  将该组件添加到相应的面板(如jpanel)。 3.  注册监听器以监听事件源产生的事件(如通过actionlistener来响应用户点击按钮)。 4.  定义处理事件的方法(如在actionlistener中的actionperformed中定义相应方法)。 以上步骤 可以用多种方法实现。但人们通常用二种方法。第一种方法是只利用一个监听器以及多个if语句来决定是哪个组件产生的事件;第二种方法是使用多个内部类来响应不同组件产生的各种事件,其具体实现又分两种方式,一种是匿名内部类,一种是一般内部类。
请登录后再发表评论!
swing是目前java中不可缺少的窗口工具组,是用户建立图形化用户界面(gui)程序的强大工具。java swing组件自动产生各种事件来响应用户行为。如当用户点击按钮或选择菜单项目时,swing组件会产生一个actionevent。swing组件会产生许多事件,如actionevents,changeevents,itemevents等,来响应用户的鼠标点击行为,列表框中值的改变,计时器的开始计时等行为。在java swing编程中,通过注册监听器, 可以监听事件源产生的事件,从而在事件处理程序中处理 所需要处理的用户行为。 java swing中处理各组件事件的一般步骤是: 1.  新建一个组件(如jbutton)。 2.  将该组件添加到相应的面板(如jpanel)。 3.  注册监听器以监听事件源产生的事件(如通过actionlistener来响应用户点击按钮)。 4.  定义处理事件的方法(如在actionlistener中的actionperformed中定义相应方法)。 以上步骤 可以用多种方法实现。但人们通常用二种方法。第一种方法是只利用一个监听器以及多个if语句来决定是哪个组件产生的事件;第二种方法是使用多个内部类来响应不同组件产生的各种事件,其具体实现又分两种方式,一种是匿名内部类,一种是一般内部类。
请登录后再发表评论!他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)【图文】Swing事件处理_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
Swing事件处理
&&转发Swing事件处理
大小:442.50KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢Java事件处理机制
我的图书馆
Java事件处理机制
自身类作为监听器
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
*Java事件处理机制:自身类作为事件监听器
*@author Winty()
class ThisClassEvent extends JFrame implements ActionListener{
public ThisClassEvent(){
super("Java事件监听机制");
setLayout(new FlowLayout());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
btn=new JButton("点击");
btn.addActionListener(this);
getContentPane().add(btn);
setBounds(200,200,300,160);
setVisible(true);
/**************************************/
public void actionPerformed (ActionEvent e){
Container c=getContentPane();
c.setBackground(Color.red);
/**************************************/
public static void main(String args[]){
new ThisClassEvent();
外部类作为监听器
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
*Java事件处理机制:外部类作为事件监听器
*@author Winty()
class OuterClassEvent extends JFrame{
public OuterClassEvent(){
super("Java事件监听机制");
setLayout(new FlowLayout());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
btn=new JButton("点击");
btn.addActionListener(new OuterClass(this));
getContentPane().add(btn);
setBounds(200,200,300,160);
setVisible(true);
public static void main(String args[]){
new OuterClassEvent();
/*外部类*********************************/
class OuterClass implements ActionListener{
OuterClassE
public OuterClass(OuterClassEvent oce){
this.oce =
public void actionPerformed(ActionEvent e){
Container c=oce.getContentPane();
c.setBackground(Color.red);
匿名内部类作为监听器
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
*Java事件处理机制:匿名内部类作为事件监听器
*@author Winty()
class AnonymousEvent extends JFrame{
public AnonymousEvent(){
super("Java事件监听机制");
setLayout(new FlowLayout());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
btn=new JButton("点击");
/*匿名内部类******************************/
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
Container c=getContentPane();
c.setBackground(Color.red);
/***************************************/
getContentPane().add(btn);
setBounds(200,200,300,160);
setVisible(true);
public static void main(String args[]){
new AnonymousEvent();
内部类作为监听器
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
*Java事件处理机制:内部类作为事件监听器
*@author Winty()
class InnerClassEvent extends JFrame{
public InnerClassEvent(){
super("Java事件监听机制");
setLayout(new FlowLayout());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
btn=new JButton("点击");
btn.addActionListener(new InnerClass());
getContentPane().add(btn);
setBounds(200,200,300,160);
setVisible(true);
/*内部类*********************************/
class InnerClass implements ActionListener{
public void actionPerformed (ActionEvent e){
Container c=getContentPane();
c.setBackground(Color.red);
/**************************************/
public static void main(String args[]){
new InnerClassEvent();
TA的最新馆藏
喜欢该文的人也喜欢}

我要回帖

更多关于 合作机制包括的内容 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信