首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多个Swing Applet Applet监听器java

多个Swing Applet Applet监听器java
EN

Stack Overflow用户
提问于 2014-10-26 22:55:42
回答 2查看 48关注 0票数 1

有没有办法让所有这些动作侦听器变成一条语句?

代码语言:javascript
复制
    jbtn0.addActionListener(this);
    jbtn1.addActionListener(this);
    jbtn2.addActionListener(this);
    jbtn3.addActionListener(this);
    jbtn4.addActionListener(this);
    jbtn5.addActionListener(this);
    jbtn6.addActionListener(this);
    jbtn7.addActionListener(this);
    jbtn8.addActionListener(this);
    jbtn9.addActionListener(this);
    jbtnAdd.addActionListener(this);


    jfrm.add(jbtn0);
    jfrm.add(jbtn1);
    jfrm.add(jbtn2);
    jfrm.add(jbtn3);
    jfrm.add(jbtn4);
    jfrm.add(jbtn5);
    jfrm.add(jbtn6);
    jfrm.add(jbtn7);
    jfrm.add(jbtn8);
    jfrm.add(jbtn9);

我对java相当陌生,我正在使用eclipse。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-10-26 22:58:46

是的,在某种程度上。我有时会这样做:

代码语言:javascript
复制
for(JButton btn : new JButton[] {
    jbtn0, jbtn1, jbtn2, ... , jbtn9
}) {
    jbtn.addActionListener(this);
    jfrm.add(jbtn);
}

即使我的组件不是从数组中启动的,例如,如果我正在填充一个JToolBar,并且需要在其他地方引用组件的名字,我也会这样做。

从您的命名方案来看,从一开始就使用数组也可能是有利的。

票数 4
EN

Stack Overflow用户

发布于 2014-10-26 22:58:53

正如pzaenger在他的评论中所说的,您可以将所有按钮添加到ArrayList或数组中,然后迭代所有条目并向每个条目添加一个actionlistener。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26578918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档