关于JAVA swing 中,事件的问题
发布网友
发布时间:2023-10-12 03:34
我来回答
共1个回答
热心网友
时间:2024-12-01 14:19
可以把JBa .addActionListener(this);这句改成其他的:
比如:JBa .addActionListener(A,B类的某个成员字段);
我的意思是,按钮就在A,B、中定义,然后在A类中(B类类似不再重复)的构造函数中new出来并注册时间监听,那么问题来了,谁来监听?建议构造函数这样写:
public A(ActionListener lst){
this.按钮=new Button()//等实例操作,把按钮的所有属性设置好后-->
this.按钮.setActionListener(lst);//把传入的参数设为监听的对象
}
新的问题就是,需要在C类中new A时,就把自己(建议把自己)实现ActionLIstener,然后传入参数就是自己(this):A a =new A(this);
大概是这样,如果要把按钮分离出来,就可以考虑直接new Jpanel()再对象.add()了!追问额。。。不好意思啊。。。我有点看不懂,成员字段是什么意思。。。你的意思是把this改成别的,就是把当前类的实例改成别的,那改成别的不需要设置静态吗?addActionListener();括号里不是应该写对象名吗?