Android开发笔记整理
2012-02-29 01:16
387 查看
事件三要素:事件源->监听器->事件
package com.event.test;
import java.awt.Button;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
Button b = new Button("click me!");
//事件源->事件监听器->事件
b.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("Test.....");
}
});
f.add(b);
f.setSize(200,200);
f.setVisible(true);
}
}
//点击按钮改变模板颜色
package com.event.test;
import java.awt.Button;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
final Panel p = new Panel();
Button red = new Button("red");
Button blue = new Button("blue");
Button black = new Button("black");
red.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
p.setBackground(Color.red);
}
});
blue.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
p.setBackground(Color.blue);
}
});
black.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
p.setBackground(Color.black);
}
});
p.add(red);
p.add(blue);
p.add(black);
f.add(p);
f.setSize(200,200);
f.setVisible(true);
}
}
事件处理机制:
委派式事件处理机制(代理机制)
1.Item 下拉框
package com.event.test;
import java.awt.Choice;
import java.awt.Frame;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
/**
* Item 下拉框
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
Choice c = new Choice();
c.addItem("red");
c.addItem("yellow");
c.addItem("blue");
c.addItemListener(new ItemListener(){
@Override
public void itemStateChanged(ItemEvent e) {
System.out.println("changed");
}
});
f.add(c);
f.setSize(200,200);
f.setVisible(true);
}
}
2. Mousemotion 鼠标事件
package com.event.test;
import java.awt.Frame;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
/**
* Mousemotion 鼠标事件
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addMouseMotionListener(new MouseMotionListener(){
@Override
public void mouseDragged(MouseEvent e) {
System.out.println("Mouse Dragged");
}
@Override
public void mouseMoved(MouseEvent e) {
System.out.println("Mouse Moved");
}
});
f.setSize(200,200);
f.setVisible(true);
}
}
3.package com.event.test;
import java.awt.Frame;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
/**
* Mouse 鼠标事件
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addMouseListener(new MouseListener(){
@Override
public void mouseClicked(MouseEvent e) {
System.out.println("mouse Clicked");
}
@Override
public void mousePressed(MouseEvent e) {
System.out.println("mouse Pressed");
}
@Override
public void mouseReleased(MouseEvent e) {
System.out.println("mouse Released");
}
@Override
public void mouseEntered(MouseEvent e) {
System.out.println("mouse Entered");
}
@Override
public void mouseExited(MouseEvent e) {
System.out.println("mouse Exited");
}
});
f.setSize(200,200);
f.setVisible(true);
}
}
4.key 键盘事件
package com.event.test;
import java.awt.Frame;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
/**
* key 键盘事件
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addKeyListener(new KeyListener(){
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_UP){
System.out.println("up");
}else if(e.getKeyCode()==KeyEvent.VK_DOWN){
System.out.println("down");
}else if(e.getKeyCode()==KeyEvent.VK_LEFT){
System.out.println("left");
}else if(e.getKeyCode()==KeyEvent.VK_RIGHT){
System.out.println("right");
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
});
f.setSize(200,200);
f.setVisible(true);
}
}
5.键盘事件+窗口关闭
package com.event.test;
import java.awt.Frame;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
/**
* key 键盘事件+窗口关闭
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addWindowListener(new WindowListener(){
@Override
public void windowOpened(WindowEvent e) {
System.out.println("已经打开窗口");
}
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub
}
});
f.addKeyListener(new KeyListener(){
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_UP){
System.out.println("up");
}else if(e.getKeyCode()==KeyEvent.VK_DOWN){
System.out.println("down");
}else if(e.getKeyCode()==KeyEvent.VK_LEFT){
System.out.println("left");
}else if(e.getKeyCode()==KeyEvent.VK_RIGHT){
System.out.println("right");
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
});
f.setSize(200,200);
f.setVisible(true);
}
}
6.文本监听事件+回车键发送消息功能
package com.event.test;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
import java.awt.Panel;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
/**
* TextListener 文本监听事件+回车键发送消息功能
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
final TextField tf = new TextField(30);
Button send= new Button("send");
final TextArea ta = new TextArea();
tf.addKeyListener(new KeyListener(){
@Override
public void keyTyped(KeyEvent e) {}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
String str = tf.getText();
ta.append("KEN:\n"+str+"\n\r");
}
}
@Override
public void keyReleased(KeyEvent e) {}
});
send.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
String str = tf.getText();
// ta.setText(str);
ta.append("KEN:\n"+str+"\n\r");
}
});
Panel p = new Panel();
p.add(tf);
p.add(send);
f.add(p,BorderLayout.SOUTH);
f.add(ta,BorderLayout.NORTH);
f.setSize(400,300);
f.setVisible(true);
}
}
适配器(变压器)
package com.event.test;
import java.awt.Frame;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
/**
* TextListener 文本监听事件+回车键发送消息功能
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addWindowListener(new MyAdapter());
f.setSize(400,300);
f.setVisible(true);
}
}
class MyAdapter extends MyListener{ //取其中一个方法windowClosing并定义
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
class MyListener implements WindowListener{
@Override
public void windowOpened(WindowEvent e) {
}
@Override
public void windowClosing(WindowEvent e) {
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
}
@Override
public void windowDeiconified(WindowEvent e) {
}
@Override
public void windowActivated(WindowEvent e) {
}
@Override
public void windowDeactivated(WindowEvent e) {
}
}
package com.event.test;
import java.awt.Button;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
Button b = new Button("click me!");
//事件源->事件监听器->事件
b.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("Test.....");
}
});
f.add(b);
f.setSize(200,200);
f.setVisible(true);
}
}
//点击按钮改变模板颜色
package com.event.test;
import java.awt.Button;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
final Panel p = new Panel();
Button red = new Button("red");
Button blue = new Button("blue");
Button black = new Button("black");
red.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
p.setBackground(Color.red);
}
});
blue.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
p.setBackground(Color.blue);
}
});
black.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
p.setBackground(Color.black);
}
});
p.add(red);
p.add(blue);
p.add(black);
f.add(p);
f.setSize(200,200);
f.setVisible(true);
}
}
事件处理机制:
委派式事件处理机制(代理机制)
1.Item 下拉框
package com.event.test;
import java.awt.Choice;
import java.awt.Frame;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
/**
* Item 下拉框
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
Choice c = new Choice();
c.addItem("red");
c.addItem("yellow");
c.addItem("blue");
c.addItemListener(new ItemListener(){
@Override
public void itemStateChanged(ItemEvent e) {
System.out.println("changed");
}
});
f.add(c);
f.setSize(200,200);
f.setVisible(true);
}
}
2. Mousemotion 鼠标事件
package com.event.test;
import java.awt.Frame;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
/**
* Mousemotion 鼠标事件
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addMouseMotionListener(new MouseMotionListener(){
@Override
public void mouseDragged(MouseEvent e) {
System.out.println("Mouse Dragged");
}
@Override
public void mouseMoved(MouseEvent e) {
System.out.println("Mouse Moved");
}
});
f.setSize(200,200);
f.setVisible(true);
}
}
3.package com.event.test;
import java.awt.Frame;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
/**
* Mouse 鼠标事件
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addMouseListener(new MouseListener(){
@Override
public void mouseClicked(MouseEvent e) {
System.out.println("mouse Clicked");
}
@Override
public void mousePressed(MouseEvent e) {
System.out.println("mouse Pressed");
}
@Override
public void mouseReleased(MouseEvent e) {
System.out.println("mouse Released");
}
@Override
public void mouseEntered(MouseEvent e) {
System.out.println("mouse Entered");
}
@Override
public void mouseExited(MouseEvent e) {
System.out.println("mouse Exited");
}
});
f.setSize(200,200);
f.setVisible(true);
}
}
4.key 键盘事件
package com.event.test;
import java.awt.Frame;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
/**
* key 键盘事件
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addKeyListener(new KeyListener(){
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_UP){
System.out.println("up");
}else if(e.getKeyCode()==KeyEvent.VK_DOWN){
System.out.println("down");
}else if(e.getKeyCode()==KeyEvent.VK_LEFT){
System.out.println("left");
}else if(e.getKeyCode()==KeyEvent.VK_RIGHT){
System.out.println("right");
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
});
f.setSize(200,200);
f.setVisible(true);
}
}
5.键盘事件+窗口关闭
package com.event.test;
import java.awt.Frame;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
/**
* key 键盘事件+窗口关闭
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addWindowListener(new WindowListener(){
@Override
public void windowOpened(WindowEvent e) {
System.out.println("已经打开窗口");
}
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub
}
});
f.addKeyListener(new KeyListener(){
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_UP){
System.out.println("up");
}else if(e.getKeyCode()==KeyEvent.VK_DOWN){
System.out.println("down");
}else if(e.getKeyCode()==KeyEvent.VK_LEFT){
System.out.println("left");
}else if(e.getKeyCode()==KeyEvent.VK_RIGHT){
System.out.println("right");
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
});
f.setSize(200,200);
f.setVisible(true);
}
}
6.文本监听事件+回车键发送消息功能
package com.event.test;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Frame;
import java.awt.Panel;
import java.awt.TextArea;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
/**
* TextListener 文本监听事件+回车键发送消息功能
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
final TextField tf = new TextField(30);
Button send= new Button("send");
final TextArea ta = new TextArea();
tf.addKeyListener(new KeyListener(){
@Override
public void keyTyped(KeyEvent e) {}
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
String str = tf.getText();
ta.append("KEN:\n"+str+"\n\r");
}
}
@Override
public void keyReleased(KeyEvent e) {}
});
send.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent e) {
String str = tf.getText();
// ta.setText(str);
ta.append("KEN:\n"+str+"\n\r");
}
});
Panel p = new Panel();
p.add(tf);
p.add(send);
f.add(p,BorderLayout.SOUTH);
f.add(ta,BorderLayout.NORTH);
f.setSize(400,300);
f.setVisible(true);
}
}
适配器(变压器)
package com.event.test;
import java.awt.Frame;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
/**
* TextListener 文本监听事件+回车键发送消息功能
* @author ken
*
*/
public class EventTest {
public static void main(String[] args) {
Frame f = new Frame();
f.addWindowListener(new MyAdapter());
f.setSize(400,300);
f.setVisible(true);
}
}
class MyAdapter extends MyListener{ //取其中一个方法windowClosing并定义
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
class MyListener implements WindowListener{
@Override
public void windowOpened(WindowEvent e) {
}
@Override
public void windowClosing(WindowEvent e) {
}
@Override
public void windowClosed(WindowEvent e) {
}
@Override
public void windowIconified(WindowEvent e) {
}
@Override
public void windowDeiconified(WindowEvent e) {
}
@Override
public void windowActivated(WindowEvent e) {
}
@Override
public void windowDeactivated(WindowEvent e) {
}
}
相关文章推荐
- android 开发零起步学习笔记(二十):Android开发笔记:如何使用预先制作好的SQLite数据库(整理自网络)
- Android开发之Gradle笔记整理2
- Android开发之Gradle笔记整理1
- android游戏开发——笔记整理之SurfaceView游戏框架整理
- Android应用开发中WebView的常用方法笔记整理
- Android开发之Gradle笔记整理2-Gradle常用命令及UMeng多渠道打包实战
- Android开发笔记整理
- Android开发学习笔记(13):Android开发常用技术点整理(更新中...)
- Android开发之Gradle笔记整理1
- Android开发笔记:如何使用预先制作好的SQLite数据库(整理自网络)
- 工作学习笔记——Alljoyn技术、初试Android开发
- 【笔记】Android平台下的JNI开发
- Animations(通过Java 代码控制) -- MarsChen Android 开发教程学习笔记
- android开发笔记之Gson解析
- Android开发学习笔记:浅谈WebView
- android 开发零起步学习笔记(七):认识和使用适配器
- Android 开发笔记 —— AndroidStudio 中使用 android-serialport-api 进行串口通讯
- Android开发学习笔记(1)
- 【Android开发学习笔记】【第十课】运动事件 之——触摸屏
- Android 应用开发笔记 - 快显信息(Toast)