Javabean事件的标准格式
我正在尝试制作一个(非可视的)JavaBean,它将成为几个NetBeans表单中的一个组件,事件将触发这些表单中的操作。我尝试按照中描述的事件规范进行操作。但是,当我将bean粘贴到表单中时,它不会显示事件。我做错了什么 以下是我正在使用的代码:Javabean事件的标准格式,java,events,netbeans,javabeans,Java,Events,Netbeans,Javabeans,我正在尝试制作一个(非可视的)JavaBean,它将成为几个NetBeans表单中的一个组件,事件将触发这些表单中的操作。我尝试按照中描述的事件规范进行操作。但是,当我将bean粘贴到表单中时,它不会显示事件。我做错了什么 以下是我正在使用的代码: public interface UserListListener extends java.util.EventListener { void update(); } import java.util.ArrayList; public
public interface UserListListener extends java.util.EventListener {
void update();
}
import java.util.ArrayList;
public class UpdateChecker {
private ArrayList<UserListListener> userListListeners = new ArrayList<>();
public UpdateChecker(){}
public void addUserListListener(UserListListener l) {
userListListeners.add(l);
}
public void removeUserListListener(UserListListener l) {
userListListeners.remove(l);
}
void fireUserListEvent() {
for(UserListListener l : userListListeners) {
l.update();
}
}
}
公共接口UserListListener扩展了java.util.EventListener{
无效更新();
}
导入java.util.ArrayList;
公共类UpdateChecker{
私有ArrayList userListListeners=新ArrayList();
public UpdateChecker(){}
public void addUserListListener(UserListListener l){
userListListeners.add(l);
}
public void removeUserListListener(UserListListener l){
删除(l);
}
void fireUserListEvent(){
for(UserListListener l:userListListeners){
l、 更新();
}
}
}
我在地图上找到了答案。我没有意识到的是,EventListener
中的方法需要一个java.util.EventObject
作为其参数。由于(出于某些原因)这方面的文档记录非常糟糕,我将发布一个完整的示例,以供将来参考:
import java.util.ArrayList;
public class UpdateChecker {
private ArrayList<UserListListener> userListListeners = new ArrayList<>();
public UpdateChecker(){}
public void addUserListListener(UserListListener l) {
userListListeners.add(l);
}
public void removeUserListListener(UserListListener l) {
userListListeners.remove(l);
}
void fireUserListEvent() {
for(UserListListener l : userListListeners) {
l.updated(new UpdateEvent(this));
}
}
}
public class UpdateEvent extends java.util.EventObject {
public UpdateEvent(Object source) {
super(source);
}
}
public interface UserListListener extends java.util.EventListener {
void updated(UpdateEvent evt);
}
import java.util.ArrayList;
公共类UpdateChecker{
私有ArrayList userListListeners=新ArrayList();
public UpdateChecker(){}
public void addUserListListener(UserListListener l){
userListListeners.add(l);
}
public void removeUserListListener(UserListListener l){
删除(l);
}
void fireUserListEvent(){
for(UserListListener l:userListListeners){
l、 更新(新更新事件(本));
}
}
}
公共类UpdateEvent扩展了java.util.EventObject{
公共更新事件(对象源){
超级(来源);
}
}
公共接口UserListListener扩展了java.util.EventListener{
作废更新(更新事件evt);
}