我正在尝试制作一个简单的球动画,从1角开始,然后转到面板的另一个角落.我为此编写了一个程序.
当我运行程序时,椭圆形或球形离开了轨迹.我的意思是说它在程序运行时会留下“颜色痕迹”.在我的程序中,计时器每100毫秒触发一次事件.
以下是负责运行代码的逻辑:
void function() {
// in this there is a action listener timed accordingly to fire event of
// doing x++ every 100th miliseconds
}
public void paintComponent(final Graphics g) {
g.setColor(Color.black);
g.drawOval(x,y,width,height);
g.fillOval(x,y,width,height);
}
输出屏幕截图:
解决方法:
尝试
public void paintComponent(final Graphics g) {
super.paintComponent(g);
g.setColor(Color.black);
g.drawOval(x,y,width,height);
g.fillOval(x,y,width,height);
}
标签:java,user-interface,swing,graphics,2d
来源: https://codeday.me/bug/20190530/1187131.html