我只是在Java中進入圖形,我有一個問題。我使用JPanel面板創建了一個JFrame窗口(NetBeans Designer),並在其上繪製了一些圖形。然後我添加了一個JButton,它改變了一個變量,這會改變JPanel上方塊的X位置。在Java中重繪圖形
在按鈕按下該代碼將執行:
drawObject.setX(150);
drawObject.repaint();
drawObject是這個類的一個實例:
public class sola extends JPanel {
private int x = 10;
@Override
public void paintComponent(Graphics g){
super.paintComponents(g);
super.setBackground(Color.WHITE);
g.setColor(Color.ORANGE);
g.fill3DRect(x, 160, 100, 50, true);
}
public void setX(int xX){
x = xX;
}
}
現在,當我按下一個JButton,矩形並移動到新位置,但在舊的位置仍然可見。只有當我調整窗口的大小時纔會刷新,舊的矩形會消失。我怎樣才能解決這個問題,以便當我按下按鈕時,矩形只在新位置可見?
爲了更快得到更好的幫助,請發佈SSCCE(http://pscode.org/sscce.html)。如果您有問題,請不要忘記添加問號(?)。 – 2011-03-13 12:00:24
我對這個第一個問題是一個非常明確的問題。 – Chris 2011-03-13 12:02:20