2013-12-13 28 views
0

每次我按下取消或保存在UI上時,它總是執行兩個按鈕。我已經嘗試過無數種方法讓它監聽動作執行塊中的if語句,但它似乎忽略了它。我需要它,所以如果我點擊保存它只執行onSave()並取消onCancel()。感謝您的時間如何讓兩個JButton分別執行操作

public class EditTagPanel extends AbstractTagPanel implements ActionListener { 

TagPanelEventListener tagPanelEventListener; 
JButton save; 
JButton cancel; 


public EditTagPanel(ID3v1 id3v1Tag) { 
super(id3v1Tag); 

} 

@Override 
protected void configureActionFields() { 
JPanel editOptionsPanel = new JPanel(new FlowLayout()); 
save = new JButton("Save"); 
save.addActionListener(this); 
editOptionsPanel.add(save); 
cancel = new JButton("Cancel"); 

cancel.addActionListener(this); 
editOptionsPanel.add(cancel); 
this.add(editOptionsPanel, BorderLayout.PAGE_END); 
} 

public void addTagPanelEventListener(TagPanelEventListener tagPanelEvent) { 

this.tagPanelEventListener = tagPanelEvent; 


} 

@Override 
public void actionPerformed(ActionEvent e) { 

if (e.getSource().equals(save)); 
{ 
tagPanelEventListener.onSave(getId3v1Tag()); 
} 

if(e.getSource().equals(cancel)); 
{ 
tagPanelEventListener.onCancel(); 
} 

}

回答

0

只是刪除:

;

每個if-statmentactionPerformed()方法之後,接下來的一樣:

@Override 
public void actionPerformed(ActionEvent e) { 
    if (e.getSource().equals(save)) { 
     tagPanelEventListener.onSave(getId3v1Tag()); 
    } 

    if (e.getSource().equals(cancel)) { 
     tagPanelEventListener.onCancel(); 
    } 
} 
相關問題