0
不可思議的是我正在實現模型 - 視圖 - 控制器(MVC),並且在控制器類中我必須知道哪個視圖的JButton觸發了事件。我怎麼知道在哪個類按鈕被創建了哪個事件產生了....?
不可思議的是我正在實現模型 - 視圖 - 控制器(MVC),並且在控制器類中我必須知道哪個視圖的JButton觸發了事件。我怎麼知道在哪個類按鈕被創建了哪個事件產生了....?
使用事件的getSource()
方法:
Object source = event.getSource();
if (source == button1) {
...
}
else if (source == button2) {
...
}
但是你應該避免單一的ActionListener處理來自多個按鈕的事件擺在首位。每個按鈕都應該有自己的責任,因此可以由單個監聽器處理。
是的,你寫,但比較... – Arsalan 2012-02-05 09:46:03
@Arsalan我不明白你的意見。 「與哪個比較」是什麼意思? – 2012-02-05 09:58:06
@JB Nizet if(event.getSource()== ????) 我必須與之比較,因爲我的事件處理類不同,並且該按鈕在該類中不可訪問... My View class have have按鈕(已觸發事件),我在我的控制器類中處理該事件。 – Arsalan 2012-02-05 10:00:00