2012-09-25 28 views
0

我擴展了一個具有所有事件處理的類,我想在超類中發生事件時在子類中運行一個方法。怎麼做?如何在Swing中獲取事件發生狀態?

+3

你可以對你正在努力實現在其類什麼更具體一點。大多數Swing類有處理事件的替代機制,然後嘗試覆蓋處理原始事件的方法(mouseevent,keyevents) – Robin

+0

Thanks @Robin從單選按鈕觸發的actionperformed()方法獲取一些值後,我需要執行某些操作。超類處理GUI設計以及GUI中該單選按鈕的事件處理。現在我想重用該GUI,並且需要在發生該事件之後發生的一些值。所以我擴展了這個超類,並在發生該事件後執行子類函數。 – Achyut

回答

0
  1. 知道你是什麼樣的事件感興趣的將被用於從子類方法。
  2. 找出哪些方法是所謂的超時該事件被觸發。
  3. 在您的子類中重寫它,同時確保仍然調用初始函數。

試試這個:

public class SubComponent extends SuperComponent { 
    // override actionEvent in SuperComponent 
    @Override 
    public void actionEvent() { 
     super.actionEvent(); 
     doAdditionalStuff(); 
    } 
} 
0

從我認爲這更多的是一種繼承類型的問題的描述:

  1. 創建超類抽象方法,調用它的超類和子類中實現它。當然,它需要聲明超類抽象
  2. 用一個方法創建接口,讓超類實現它。將方法的空實現添加到超類中,並僅在子類中覆蓋它。你可以調用父類此方法,如果您有子類的實例
相關問題