欢迎来到天天文库
浏览记录
ID:14532661
大小:66.50 KB
页数:11页
时间:2018-07-29
《韩顺平循序渐进学java从入门到精通课件笔记第三十五讲到第三十七讲》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、swing三大特性布局绘图事件处理事件处理机制案例demo9_3点击不同按钮让面板的背景色发生相应的变化(对鼠标的监听)/***功能:讲解事件处理机制*/packagecom.test2;importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;publicclassdemo9_3extendsJFrameimplementsActionListener{MyPanelmypanel=null;catcc=newcat();JButtonjb1,jb2;publicstaticvoidmain(String[]args){demo9
2、_3demo=newdemo9_3();}publicdemo9_3(){mypanel=newMyPanel();jb1=newJButton("黑色");jb2=newJButton("红色");this.add(jb1,BorderLayout.NORTH);mypanel.setBackground(Color.black);this.add(mypanel);this.add(jb2,BorderLayout.SOUTH);//注册监听,监听着可以有多个,不仅仅是一个//指定action命令,当单击是就把黑色这个值传过去了jb1.setActionCommand("黑色");jb1.
3、addActionListener(this);jb1.addActionListener(cc);jb2.setActionCommand("红色");jb2.addActionListener(this);jb2.addActionListener(cc);this.setSize(200,200);this.setLocation(200,200);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true);}@Override//对事件处理的方法publicvoidactionPerformed(A
4、ctionEvente){if(e.getActionCommand().equals("黑色")){System.out.println("您点击了黑色按钮!");mypanel.setBackground(Color.black);}else{mypanel.setBackground(Color.red);System.out.println("您点击了红色按钮!");}}}classcatimplementsActionListener{@OverridepublicvoidactionPerformed(ActionEvente){if(e.getActionCommand().eq
5、uals("黑色")){System.out.println("猫也知道您按下了黑色按钮!");}}}classMyPanelextendsJPanel{publicvoidpaint(Graphicsg){super.paint(g);g.setColor(Color.red);//System.out.println("我的主人,我的大小又变咯!");}}说明:事件源是:JButton对象.事件:点击按钮将会发生ActionEvent事件,具体产生的对象就是args().事件监听者:(就是类的对象)事件处理方法:actionPerformed中处理介绍:世界处理采用的是委派事件模型.委派事
6、件模型指事件发生时,产生事件的对象(即事件源)会把此信息传递给事件监听者处理一种方式,而信息就是java.awt.event事件类库里某个类所创建的对象,我们暂时把它称为事件对象案例demo9_4让小球随着键盘的按键上下移动(对键盘的监听)/***功能:加深对事件处理机制的理解,通过上下左右键来控制一个小球的移动.*/packagecom.test2;importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;publicclassdemo9_4extendsJFrame{MyPanel1mp=null;publicstaticvoi
7、dmain(String[]args){demo9_4demo=newdemo9_4();}publicdemo9_4(){mp=newMyPanel1();this.setSize(400,400);this.setLocation(100,100);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);this.setVisible(true)
此文档下载收益归作者所有