2

我有主类、GUI 类和 CheckingAccount 类。我应该在其中制作一个带有单选按钮的 Jframe 来处理 CheckingAccount 对象,并且不应该有主逻辑!所以我想我可以在 main 中创建一个 CheckingAccount 对象并获得对它的某种引用,可能是通过一个方法或构造函数参数,并在 GUI 类中使用它(与动作侦听器一起使用,以及类似的东西。)问题是,例如在 GUI 类中,在 actionPerformed 方法中我不能像 user.setBlahBlah...//user 是主要的 CheckingAccount 对象。你能帮我解决这个问题吗?

4

1 回答 1

2

setCheckingAccount(CheckingAccount checkingAccount)为您的 GUI 类提供一个 CheckingAccount 变量,该变量在方法中或通过构造函数参数给出引用。然后,您可以引用 GUI 内的对象(或者更好的是,如果您有 Control 类)。

public class MyGui {
  private CheckingAccount checkingAccount;
  private JButton myButton = new new JButton("My Button");

  public MyGui() {
    myButton.addActionListener(new ActionListener(){
      public void actionPerformed(ActionEvent evt) {
        if (checkingAccount == null) {
          return;
        }
        checkingAccount.someMethod();
      }
    });
  }

  public void setCheckingAccount(CheckingAccount checkingAccount) {
    this.checkingAccount = checkingAccount;
  }

}

包含类的主要方法:

public Main {
  public static void main(String[] args) {
    CheckingAccount checkingAccount = new CheckingAccount();
    MyGui myGui = new MyGui();
    myGui.setCheckingAccount(checkingAccount);
    myGui.displaySomehow();
  }
}
于 2013-03-29T03:34:13.577 回答