繁体   English   中英

如何在JTabbedPane中创建访问JTabbedPane外部类的对象?

[英]How do I create an object in a JTabbedPane that accesses a class outside of the JTabbedPane?

我正在创建一个基于文本的城市管理游戏,并在JFrame中使用JTabbedPanes。 JTabbedPane内部有4个主要的JPanel,用于显示(1)城市人口,(2)经济等级细目,(3)社会等级细目和(4)总体认可等级。 这些JPanel内部有许多其他JPanel,用于显示内容。

我将在“ ApprovalRating”类中计算出批准评级,但目前使用46作为占位符:

public class ApprovalRating {

  ApprovalRating(){
    int rating;
  }

  public void getRating() {
    int rating = 46;
  }

但是我似乎无法创建一个能够访问我需要的类或方法的对象:

StaticsticsTab(){


avgApprove = new JPanel();
        ApprovalRating() t1 = new ApprovalRating();// this line doesn't work
        int myRating = t1.getRating();// t1 hasn't been created so this line won't work either
        JLabel rating = new JLabel(""+myRating);


}

(我省略了我的StatisticsTab类的大部分内容,但是如果您觉得有帮助的话,可以发布整个内容。其余的只是创建JPanels和关联的元素:JLabels等。)

这是我的主要方法:

public class Main {
public static void main(String[] args) {
    final int WIDTH = 500;
    final int HEIGHT = 600;


    JFrame frame = new JFrame("City Manager");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setSize(WIDTH,HEIGHT);
    frame.setLocationRelativeTo(null);

    JTabbedPane tp = new JTabbedPane();
    tp.addTab("Statistics", new StatisticsTab());//Accesses JPanels made in this tab;

    frame.getContentPane().add(tp);
   frame.setResizable(false);
    frame.setVisible(true);
}

}

非常感谢任何可以提供帮助的人!

ApprovalRating t1 = new ApprovalRating(); ...没有第一个"()"

public void getRating()不返回任何内容:

public class ApprovalRating {

  private int rating;

  public ApprovalRating() {
    // TODO implement rating calculation
    rating = 46; // int literal for now
  }

  public int getRating() {
    return rating;
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM