一、JButton的e.getSource()和e.getActionCommand()方法的區(qū)別
在Java中,Swing庫提供了JButton類來創(chuàng)建按鈕組件。在按鈕被點擊時,我們通常需要執(zhí)行相應(yīng)的操作。為此,我們需要注冊一個ActionListener來監(jiān)聽按鈕的點擊事件。當(dāng)一個按鈕被點擊時,ActionListener的actionPerformed()方法將被調(diào)用,并且它將被傳遞一個ActionEvent對象,該對象包含有關(guān)按鈕的信息。
在ActionEvent對象中,有兩個方法getSource()和getActionCommand(),這兩個方法經(jīng)常被用于處理按鈕點擊事件。
getSource()方法返回觸發(fā)事件的對象。對于一個JButton對象來說,當(dāng)按鈕被點擊時,ActionEvent對象的getSource()方法將返回這個JButton對象本身。因此,我們可以使用getSource()方法來判斷哪個按鈕被點擊了。
getActionCommand()方法返回與事件關(guān)聯(lián)的字符串命令。對于一個JButton對象來說,可以使用setActionCommand()方法來設(shè)置與該按鈕關(guān)聯(lián)的命令字符串。當(dāng)該按鈕被點擊時,ActionEvent對象的getActionCommand()方法將返回該命令字符串。因此,我們可以使用getActionCommand()方法來確定哪個命令被觸發(fā)了。