![](/img/trans.png)
[英]How can I listen for key presses (within Java Swing) across all components?
[英]How can I listen my all components with only one event?
這是問題,我有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。 我必須為所有組件(文本字段和jbuttons)編寫不同的mouseListener。 我怎么能用一個聽眾做到這一點? 還是一件事? 你有什么主意嗎?
看一下MouseEvent#getSource
...雖然,老實說,如果你使用的是JButton
你不應該使用MouseListener
,而應該使用ActionListener
。 另外,一般來說,大多數用戶不會雙擊JButton
因為它們不直觀,按鈕只需要點擊一下即可激活
請記住,鍵盤也可以激活按鈕,不會通知MouseListener
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.