java里监听相关ActionListene的理解。========此代码是错误的,
package com.aa;
import java.awt.Component;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener; import javax.swing.*;
//事件监听
import javax.swing.*;
class West7 extends JFrame implements ActionListener,KeyListener{//这里的键盘监听也是的,必须实现接口里的方法
//因为实现ActionListener接口,
JButton jb1,jb2,jb3;
JPanel jp;
JTextField jt;
JTextArea ta; public West7(){ ta=new JTextArea(12,30);
jt=new JTextField(20);
jt.addActionListener(this);
jb1=new JButton("OK");
jb2=new JButton("Exit");
jp=new JPanel();
jb1.addActionListener(this);//只要实现了AcitonListener接口,参数this就可以正常了
jp.add(ta);
jp.add(jt);
jp.add(jb1);
jb2.addKeyListener(this);//键盘监听
jp.add(jb2);
this.add(jp);
this.setVisible(true);
this.setDefaultCloseOperation(3);
this.setBounds(100, 200, 500, 300);//就是把对象jb2注册给事件监听者new ActinoListener
jb2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){//这是一个匿名的内部类,用来实现对动作事件的处理 } } { @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub }
}) } public void send(){
String s=jt.getText().trim(); }
public void actionPerformed(ActionEvent e){
//重写方法
//好奇怪,竟然没有报错 String s=e.getActionCommand();//利用getActionCommand获取按钮名称
if(s.equals("OK")){
Component frame;
JOptionPane.showMessageDialog(frame, "32");
}else if(s.equals("Exit")){ JOptionPane.showMessageDialog(frame, "哈哈");
}else { JOptionPane.showMessageDialog(frame, "我呢");
}
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub }
@Override
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER){
send(); //System.out.println("你好");
} }
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub }
public static void main(String[] args) {
West7 w=new West7();
JFrame frame = new JFrame("默默");
frame.getContentPane().add(comp) }
}
java里监听相关ActionListene的理解。========此代码是错误的,的更多相关文章
- ALERT日志中常见监听相关报错之二:ORA-3136错误的排查
最近在多个大型系统中遇到此问题,一般来说假设client未反映异常的话能够忽略的. 假设是client登陆时遇到ORA-12170: TNS:Connect timeout occurred,能够參考 ...
- Oracle ALERT日志中常见监听相关报错之二:ORA-3136错误的排查 (转载)
近期在多个大型系统中遇到此问题,一般来说如果客户端未反映异常的话可以忽略的.如果是客户端登陆时遇到ORA-12170: TNS:Connect timeout occurred,可以参考 http:/ ...
- JAVA事件监听机制的实现
今天学习了java的事件编程机制,略有体会,先在此记下心得. 第一,首先明确几个概念. 事件源:一个产生或者触发事件的对象.事件:承载事件源状态改变时的信息对象.事件监听器接口:实际上就是一个类,该类 ...
- java 事件监听 - 鼠标
java 事件监听 - 鼠标 //事件监听 //鼠标事件监听 //鼠标事件监听有两个实现接口 //1.MouseListener 普通的鼠标操作 //2.MouseMotionListener 鼠标的 ...
- java 事件监听 - 键盘
java 事件监听 - 键盘 //事件监听 //键盘事件监听,写了一个小案例,按上下左右,改变圆形的位置,圆形可以移动 import java.awt.*; import javax.swing.*; ...
- java 事件监听 - 控件
java 事件监听 //事件监听 //事件监听,写了一个小案例,点击按钮改变面板的颜色. import java.awt.*; import javax.swing.*; import java.aw ...
- Java线程监听,意外退出线程后自动重启
Java线程监听,意外退出线程后自动重启 某日,天朗气清,回公司,未到9点,刷微博,顿觉问题泛滥,惊恐万分! 前一天写了一个微博爬行程序,主要工作原理就是每隔2分钟爬行一次微博,获取某N个关注朋友微博 ...
- java事件监听机制
1.简单的事件监听 package demo2; /* * java事件监听机制 */ import java.awt.*; import javax.swing.*; import java.awt ...
- Java事件监听的四种实现方式
1.事件对象: 一般继承自java.util.EventObject对象,由开发者自行定义. 2.事件源: 就是触发事件的源头,不同的事件源会触发不同的事件类型. 3.事件监听器: 事件监听器负责监听 ...
随机推荐
- Sub-process /usr/bin/dpkg returned an error code (1) 如何解决
cd /var/lib/dpkg sudo mv info info.bak sudo mkdir info sudo dpkg --configure -a sudo apt-get install ...
- Treflection05_扩展习题
1. package reflectionZ; import java.lang.reflect.Constructor; import java.lang.reflect.Method; publi ...
- angularjs1 自定义轮播图(汉字导航)
本来想用swiper插件的,可是需求居然说要汉字当导航栏这就没办法了,只能自己写. directive // 自定义指令: Home页面的轮播图 app.directive('swiperImg', ...
- 关于Android中根据ID名动态获取资源的两个方法
在开发中, 我们习惯了类似下面这种方式去实现引用资源: context.getResources().getDrawable(R.drawable.flower); 但是,当我们提前知道这个资源的id ...
- git网站
https://backlog.com/git-tutorial/cn/ ------------------------------------------------------------- ...
- LeetCode OJ:Sqrt(x)(平方根)
Implement int sqrt(int x). Compute and return the square root of x. 简单的二分法,注意mid应该选为long,否则容易溢出: cla ...
- 数据库基础 非关系型数据库 MongoDB 和 redis
数据库基础 非关系型数据库 MongoDB 和 redis 1 NoSQL简介 访问量增加,频繁的读写 直接访问(硬盘)物理级别的数据,会很慢 ,关系型数据库的压力会很大 所以,需要内存级的读写操作, ...
- C#当中利用Attribute实现简易AOP
首先看一段简单的代码: public partial class Form1 : Form { public Form1() { InitializeComponent(); } //来自UI层的调用 ...
- Git的origin和master分析
首先要明确一点,对git的操作是围绕3个大的步骤来展开的(其实几乎所有的SCM都是这样) 1. 从git取数据(git clone) 2. 改动代码 3. 将改动传回git(git push) 这3个 ...
- ORM 模型层
一个模型就是一个单独的,确定的数据的信息源,包含了数据的字段和操作方法.通常,每个模型映射为一张数据库中的表 基本原则: 每个模型在Django中的存在形式为一个python类 每个模型都是djang ...