1
這裏是問題, 我有3個文本框,3個按鈕和1個標籤。他們的文本是text1,text2 text3,but1,but2,but3。如何只用一個事件來收聽我的所有組件?
我給你一個關於我想要做什麼的例子;當我雙擊一個按鈕時,按鈕會將標籤的文本更改爲按鈕的文本。我的意思是當我雙擊but2時,標籤的文字應該是but2。
我可以用該代碼來做到這一點;
MouseAdapter ml = new MouseAdapter() {
public void mouseClicked(MouseEvent me) {
if (me.getClickCount()==2) {
jLabel1.setText(jButton1.getText);
}
}
};
jButton1.addMouseListener(ml);
所以它的工作原理,但它只適用於jButton1。我必須爲所有組件(textfields和jbuttons)編寫不同的mouseListener。我怎麼能與一個聽衆做到這一點?或一個事件?你有什麼主意嗎?
我試過getSource,我也嘗試過getComponent,但我不能使用像getText或setText這樣的方法,我想我必須將它轉換爲JButton或JTextField,仍然不是我的答案:(實際上我是一個學生,我的項目,所以我應該這樣做:p你有什麼想法嗎? –
其實,你只是回答自己的問題'if(me.getSource()== jButton1){...}你也可以使用'if(「什麼是文本f jButton 1是」.equals(me.getActionCommand())){...}' – MadProgrammer
哦,上帝,是的,我的回答:)。這工作,我現在施放和使用方法。謝謝.. –