JPanel setBackground(Color.BLACK) does nothing

前端 未结 6 1100
不知归路
不知归路 2021-01-04 12:29

I have the folowing custom JPanel and I have aded it to my frame using Netbeans GUI builder but the background won\'t change! I can see the circle, drawing with g.fillOval()

6条回答
  •  清酒与你
    2021-01-04 12:38

    In order to completely set the background to a given color :

    1) set first the background color

    2) call method "Clear(0,0,this.getWidth(),this.getHeight())" (width and height of the component paint area)

    I think it is the basic procedure to set the background... I've had the same problem.

    Another usefull hint : if you want to draw BUT NOT in a specific zone (something like a mask or a "hole"), call the setClip() method of the graphics with the "hole" shape (any shape) and then call the Clear() method (background should previously be set to the "hole" color).

    You can make more complicated clip zones by calling method clip() (any times you want) AFTER calling method setClip() to have intersections of clipping shapes.

    I didn't find any method for unions or inversions of clip zones, only intersections, too bad...

    Hope it helps

提交回复
热议问题