我有一个小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) {
}
我是否正确设置了所有内容?
答案 0 :(得分:0)
您缺少构造函数。
实现这样的构造函数:
public GraphPanel(){
...
...
}
答案 1 :(得分:0)
您在constructor
中遇到了问题。
没有void
的构造函数如下所示:
public GraphPanel( )
{
...
}
如果要在底部添加彩色面板,可以创建新的JPanel
,然后setBackground(...)
将其添加到您已经使用BorderLayout.SOUTH
的面板中。您还应该设置不透明。