尝试使用变量从其他类更改JPanel的背景颜色。为什么这给我一个错误? (对Java来说真的很新,对不起...)

import java.awt.Color;

import javax.swing.*;

public class window {

    public window(int x, int y, boolean isVisible, boolean isResizable, Color col){
        JFrame jframe = new JFrame();
        int xSize = x;
        int ySize = y;
        jframe.setSize(xSize, ySize);
        jframe.setVisible(isVisible);
        jframe.setResizable(isResizable);

        JPanel jpanel = new JPanel();
        jframe.add(jpanel);
        jpanel.setSize(xSize - 100, ySize - 100);
        jpanel.setOpaque(true);
        jpanel.setBackground(Color.col);
        jpanel.setVisible(true);

    }

}


我的主要班级是这样做的:

import java.awt.Color;


public class design {

    public static void main(String[] args) {
        window window1 = new window(400, 200, true, true, Color.green);
        window window2 = new window(1000, 720, true, true, Color.red);
    }

}


它给我的错误是“ col无法解析为字段”。我知道这意味着它不了解col在做什么,但这就是我感到困惑的原因,因为我已将其声明为一种颜色...

最佳答案

您可以从构造函数中引用变量get。

只需将jpanel.setBackground(Color.col);更改为:

jpanel.setBackground(col);

关于java - 来自不同类别的JPanel的彩色背景?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39663472/

10-12 00:29
查看更多