java - 如何在 Composite JButton 类的 ChangeListener 中访问 toString() 方法?

标签 java swing constructor jbutton

我有一个 JButton 组合类,并且有一个要发送到不同类中的 JLabel 的 toString。当我调用 toString 时,我得到类似以下内容: javax.swing.DefaultButtonModel@f730d2f

public class EmptySpace{

  private JButton button;
  protected int x; 
  protected int y;
  protected String name;

  public EmptySpace(String text, int x, int y){
    this.name = text;
    this.x = x;
    this.y = y;

    button = new JButton(text);
    button.getModel().addChangeListener(new ChangeListener() {
        @Override
        public void stateChanged(ChangeEvent e) {

            ButtonModel model = (ButtonModel) e.getSource();
            if (model.isRollover()) {
                Board.toStringText.setText(e.getSource().toString()); //Where toString is called
            } else if (model.isPressed()) {

            }  
        }
    });

  }

  public String toString(){ //toString I want to access
      return "Name: " + name + " Xcoords: " + x + " Ycoords: " + y;

  }

  public JButton getButton(){
      return button;

  }
}

最佳答案

使用EmptySpace.this.toString()

关于java - 如何在 Composite JButton 类的 ChangeListener 中访问 toString() 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30021677/

相关文章:

c++ - 在对象数组的每个索引上调用不同的构造函数

java - 托管 Bean 丢失导入语句

java - 如何设置 JLabel 文本在系统 sleep 前显示

java - 在 android studio 中包含依赖项时出现 R 错误

java - 在 JTable 中添加或删除行后如何刷新 JTree

java - 菜单项不会响应点击

java - JUnit:使用构造函数而不是@Before

c++ - 在类中声明一个数组,并使用构造函数设置其大小

java - 在 Java 中,我需要什么表达式来对这个字符使用正则表达式? |

java - 在android中更改高度按钮java代码