1、this代表本类,就是this所在的类。
站在用户的角度思考问题,与客户深入沟通,找到叶县网站设计与叶县网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广、域名注册、网络空间、企业邮箱。业务覆盖叶县地区。
2、
addItemStateChanged是为了监听ItemEvent的,而ItemEvent是指示项被选定或取消选定的语义事件,此高级事件是在用户已选定项或取消选定项时由 ItemSelectable 对象(如 List)生成的。
addActionListener是为了监听ActionEvent的,而ActionEvent是指示发生了组件定义的动作的语义事件,当特定于组件的动作(比如被按下)发生时,由组件(比如 Button)生成此高级别事件。
JAVA事件响应机制
1,先自定义一个事件
public class MyEvent extends java.util.EventObject{
public MyEvent(Object source)
{
super(source);
}
}
2,再自定义一个监听器
public class MyListener implements java.util.EventListener{
//这里是当事件发生后的响应过程
public void EventActivated(MyEvent me)
{
System.out.println("事件已经被触发");
}
}
3,以下这个类为触发事件的事件源
public class MyObject {
private Vector vectorListeners=new Vector();
public synchronized void addMyListener(MyListener ml)
{
vectorListeners.addElement(ml);
}
public synchronized void removeMyListener(MyListener ml)
{
vectorListeners.removeElement(ml);
}
protected void activateMyEvent()
{
Vector tempVector=null;
MyEvent e=new MyEvent(this);
synchronized(this)
{
tempVector=(Vector)vectorListeners.clone();
for(int i=0;itempVector.size();i++)
{
MyListener ml=(MyListener)tempVector.elementAt(i);
ml.EventActivated(e);
}
}
}
//定义一个公用方法用于触发事件
public void test()
{
activateMyEvent();
}
}
4,测试类
public class Test {
public static void main(String[] args)
{
MyObject mo=new MyObject();
//注册该事件
mo.addMyListener(new MyListener());
//触发该事件
mo.test();
}
}
把下面两个类去了,直接用匿名内部类来实现...
b1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e) {
System.out.print(jt.getText());
}
});
b.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
jt.setText("");
DoubleColorBall dbcb = new DoubleColorBall();
try {
// 根据文本框里输入的数字,调用DoubleColorBall中的方法生成彩票
String[] num = dbcb.getNumber(Integer
.parseInt(jf.getText()));
for (int i = 0; i num.length; i++) {
jt.append(num[i] + "\n");
}
} catch (Exception e) {
e.printStackTrace();
jt.setText("请输入正整数数字");
}
}
});