⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 e333. creating a custom event.txt

📁 这里面包含了一百多个JAVA源文件
💻 TXT
字号:
A new custom event must extends EventObject. Moreover, an event listener interface must be declared to allow objects to receive the new custom event. All listeners must extend from EventListener. 
This example demonstrates all the steps necessary to create a new custom event. 

    // Declare the event. It must extend EventObject.
    public class MyEvent extends EventObject {
        public MyEvent(Object source) {
            super(source);
        }
    }
    
    // Declare the listener class. It must extend EventListener.
    // A class must implement this interface to get MyEvents.
    public interface MyEventListener extends EventListener {
        public void myEventOccurred(MyEvent evt);
    }
    
    // Add the event registration and notification code to a class.
    public class MyClass {
        // Create the listener list
        protected javax.swing.event.EventListenerList listenerList =
            new javax.swing.event.EventListenerList();
    
        // This methods allows classes to register for MyEvents
        public void addMyEventListener(MyEventListener listener) {
            listenerList.add(MyEventListener.class, listener);
        }
    
        // This methods allows classes to unregister for MyEvents
        public void removeMyEventListener(MyEventListener listener) {
            listenerList.remove(MyEventListener.class, listener);
        }
    
        // This private class is used to fire MyEvents
        void fireMyEvent(MyEvent evt) {
            Object[] listeners = listenerList.getListenerList();
            // Each listener occupies two elements - the first is the listener class
            // and the second is the listener instance
            for (int i=0; i<listeners.length; i+=2) {
                if (listeners[i]==MyEventListener.class) {
                    ((MyEventListener)listeners[i+1]).myEventOccurred(evt);
                }
            }
        }
    }

Here's an example of how to register for MyEvents. 
    MyClass c = new MyClass();
    
    // Register for MyEvents from c
    c.addMyEventListener(new MyEventListener() {
        public void myEventOccurred(MyEvent evt) {
            // MyEvent was fired
        }
    });

 Related Examples 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -