查找已注册到操作的所有组件

时间:2015-04-26 19:22:56

标签: java swing

是否可以找到已添加某个AbstractButton的所有Action?我可以跟踪,但如果行动已经开始工作,我宁愿不复制它。

示例:

Action action = new AbstractAction() {
    public void actionPerformed(ActionEvent e) {
        //set selected state of all registered buttons true
    }
}
AbstractButton item = new JCheckBoxMenuItem(action);
AbstractButton button = new JToggleButton(action);

1 个答案:

答案 0 :(得分:2)

一种解决方案是让所有按钮的状态必须相同,共享相同的ButtonModel:

  AbstractButton checkBox = new JCheckBox(myAction);

  AbstractButton toggleBtn = new JToggleButton(myAction);
  toggleBtn.setModel(checkBox.getModel());