我正在尝试使用 JPanel 的 paintComponent() 创建一个绘制形状(下例中的矩形)的程序,但我无法让它工作,也无法发现问题所在。
代码如下:
import javax.swing.*;
import java.awt.*;
public class RandomRec{
JFrame frame;
public void go(){
frame = new JFrame();
frame.setSize(500,500);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
DrawPanel panel = new DrawPanel();
}
public static void main (String[] args){
class DrawPanel extends JPanel{
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.orange);
g.drawRect(20, 20, 100, 60);
}
}
RandomRec test = new RandomRec();
test.go();
}
}
对此的任何帮助将不胜感激。
谢谢你。
*更新*问题解决了!将 go() 方法移出 main 方法,添加一个 frame.add(panel) 并将 frame.setVisible(true) 移动到 go() 方法的底部(更具体地说,在将面板添加到框架)已经解决了这个问题。谢谢你。