setPreferredSize不起作用

时间:2016-07-01 05:45:56

标签: java swing

为什么p1.setPreferredSize(new Dimension(200,200))显示错误。它说非法启动类型

class Menu extends JFrame  {
    JPanel p1=new JPanel();

    //Package p1 does not exist illegal start of type
    p1.setPreferredSize(new Dimension(200,200));

1 个答案:

答案 0 :(得分:1)

您不能将参数分配给方法,构造函数或静态块之外的类属性。

我猜你需要一个构造函数:

class Menu extends JFrame  {
    JPanel p1;

    public Menu() {
         p1 = new JPanel();
         p1.setPreferredSize(new Dimension(200,200));
    }
}

如果您将传递固定维度,那么静态块可能会更好:

class Menu extends JFrame  {
    static JPanel p1;
    // more elements

    static {
         p1 = new JPanel();
         p1.setPreferredSize(new Dimension(200,200));
         // more assignements
    }
}