java中監聽事件怎么設置?
一.使用內部類 ,一個個設置Button然后創建一個內部類, 用ActionPerformed來實現按鈕事件內容;
二. 使用lambda表達式, 但是這個方法比較繁瑣,需要創建一個內部類, 其實有更簡單的方法, 比如使用lambda表達式, 而不需要創建內部類, 我們可以把創建按鈕和響應的部分放到一個方法里面;
三. 使用匿名對象, 當然使用lambda表達式肯定不是非用不可的, 以前的方法是使用匿名對象, 也是可以的;
四. 自身框架做事件源容器, 其實可以直接用JFrame本身做事件源容器, 使ButtonFrame支持ActionListener接口, 需要把按鈕定義在屬性中, 然后在構造函數中添加的監聽器中直接使用this 像這樣:greenButton.addActionListener(this);然后在自己類中實現ActionPerformed方法, 使用Object source = e.getSource();獲取到事件的更新源, 然后用判斷語句來判斷是哪個按鈕的事件依次執行事件操作;
五.使用EventHandler指定事件監聽器, 使用這樣的方法EventHandler.create(ActionListener.class, frame, "loadData")創造一個ActionListener, 這種方法用lambda表達式就等同于event->frame.localData();