如何更改Jpanel的背景颜色

时间:2018-10-10 09:15:32

标签: java jpanel

我有一个小gui的以下代码。在屏幕底部应该有一个可见的面板,但是当我运行该程序时它永远不会变色

import java.awt.*;
import java.awt.event.*;

import javax.swing.*;
import javax.swing.SwingUtilities;

public class GraphPanel extends JPanel implements ActionListener {

private Graphics g;

public void GraphPanel() {
    setOpaque(true);
    setBackground(Color.white);
    this.setBounds(0, 100, 1000, 325);
    this.paintComponent(g);

    setVisible(true);
}
public void paintComponent(Graphics g) {
    super.paintComponent(g);
    g.setColor(Color.black);
    g.drawLine(40, 120, 40, 300);
}
public void actionPerformed(ActionEvent e) {

}

我是否正确设置了所有内容?

2 个答案:

答案 0 :(得分:0)

您缺少构造函数。

实现这样的构造函数:

public GraphPanel(){
     ...
     ...
}

答案 1 :(得分:0)

您在constructor中遇到了问题。

没有void的构造函数如下所示:

    public GraphPanel( )
    {
    ...
    }

如果要在底部添加彩色面板,可以创建新的JPanel,然后setBackground(...)将其添加到您已经使用BorderLayout.SOUTH的面板中。您还应该设置不透明。