@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == thirdBtn) {
//System.out.println("Third Button Click");
System.out.println(e.getSource()+" Click");
}
}
獲得一個JButton的名字在上面的代碼,我想知道的,如果不是這樣做:上點擊
//System.out.println("Third Button Click");
,如果我可以做這樣的事情:
System.out.println(e.getSource()+" Click");
然而代碼輸出:
BlackJack.OverBoard$BlackJackButton[,440,395,100x25,alignmentX=0.0,alignmentY=0.5,
bo[email protected]7a3d8738,
flags=16777504,maximumSize=,minimumSize=,preferredSize=,
defaultIcon=,disabledIcon=,disabledSelectedIcon=,
margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],
paintBorder=false,paintFocus=true,
pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,
text=Change,defaultCapable=true] Click
我不想要這個,我想知道如何獲得JButton
的名稱,並點擊輸出它。
編輯:
有些人感到困惑。當我說「名」(也許這就是它打錯字了),我的意思是說你初始化JButton
JButton btnExample = new JButton();
我希望它這樣,當你按一下按鈕,它在控制檯輸出btnExample
。
不能做......你現在的方式。你有三個選擇。你可以使用'JButton#setText'和'JButton#getText'這是顯示在屏幕上的文本,'JButton#setName'和'JButton#getName'這是一個內部的'String'引用,所以它可以是任何你或者,你可以創建你自己的自定義按鈕並修改'toString'方法 - 這是不推薦的...... – MadProgrammer
*「我想要它,所以當你點擊按鈕時,它會在控制檯輸出'btnExample'。 *由於這些信息可能對GUI的最終用戶不可見,並且如果他們看到它們對他們來說毫無意義,看起來這個用例指的是在開發過程中運行的代碼。我建議這裏實際需要的是一個調試器,也許還有一些日誌記錄。 –
@AndrewThompson我明白這一點,但這只是我想知道的教育目的。謝謝 – Exikle