首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java中按钮功能的操作命令

Java中按钮功能的操作命令
EN

Stack Overflow用户
提问于 2012-11-08 07:32:05
回答 1查看 2.9K关注 0票数 1

这是我第一次用java swing co做gui编程,所以我需要一些建议。我目前正在通过在按钮上设置操作命令来为按钮添加功能。然后,我在容器上侦听如下所示的操作:

代码语言:javascript
复制
    colorButton.setText("Select Color");
    colorButton.setFocusable(false);
    colorButton.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
    colorButton.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
    jToolBar1.add(colorButton);
    jToolBar1.add(jSeparator1);
    colorButton.setActionCommand("selectColor");
    colorButton.addActionListener(this);

然后,我使用下面这样的代码片段检查执行了操作的组件:

代码语言:javascript
复制
else if("selectColor".equals(e.getActionCommand())) {
        Color c = JColorChooser.showDialog(this, "Select Color", Color.GREEN);
        if (selectedShape != null) {
            undoStack.add(copyOf(model.getAllShapes()));
            model.setShapeColor(selectedShape, c);  
        }
        else{
            defaultColor = c;
        }
    }

我只想知道这是好的实践还是坏的实践?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-08 07:42:20

我通常做的是使用匿名类,例如

代码语言:javascript
复制
JButton button = new JButton("BUTTON");  

button.addActionListener(new ActionListener() {  
  public void actionPerformed(ActionEvent event ) {  
    // do relevant stuff
  }  
});  

编辑:MadProgrammer的评论(见上)很好地总结了你的选择。对于“较长”的方法,这可能确实不是最好的方法,但对于简单的方法,它是很好和清晰的。

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

https://stackoverflow.com/questions/13280132

复制
相关文章

相似问题

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