油漆没有出现

时间:2014-05-31 01:08:58

标签: java swing graphics

我正在使用JFrame和窗格并尝试绘制一个简单的方块。 我的画没有露面。我把颜色设置为黑色,因此它应该是可见的。 代码:

    package W2;

    import java.awt.Color;
    import java.awt.Container;
    import java.awt.Graphics;
    import javax.swing.*;       

    public class W2 {

        JFrame frame = new JFrame("W2");

        public W2(){                
            Container pane = new Container();
            frame.setContentPane(pane);
            frame.setSize(750,500);
            frame.setLocationRelativeTo(null);
            frame.setResizable(false);
            frame.setVisible(true);
        }

        public void paint(Graphics g){
            g.setColor(Color.BLACK);
            g.fillRect(50, 50, 50, 50);
        }

        public static void main(String args[]){
            new W2();
        }

    }

1 个答案:

答案 0 :(得分:3)

paint方法不会被调用,因为它不是可以绘制的对象的一部分。

有关如何在Swing中完成绘画的详细信息,请参阅Performing Custom Painting

例如......

frame.setContentPane(new JPanel() {
    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.setColor(Color.BLACK);
        g.fillRect(50, 50, 50, 50);
    }
});