我在電腦SCI AP我,我想不通這是爲什麼不工作的Java畫圖X =位置做別的做到這一點
public static void moon(Graphics g) {
for(int k = 0; k < 550; k+=2) {
if (k == 550) {
g.setColor(Color.blue);
g.fillOval(k,50,50,50);
for(long delay = 1; delay<10000000; delay++);
g.setColor(Color.white);
g.fillOval(k,50,50,50);
k = 0;
} else {
g.setColor(Color.black);
g.fillOval(k,50,50,50);
for(long delay = 1; delay<10000000; delay++);
g.setColor(Color.white);
g.fillOval(k,50,50,50);
}
}
}
所以基本上是會使黑色橢圓形動在屏幕上,然後當k
= 550時,它會使藍色的屏幕穿過屏幕..但它並沒有這樣做,它只是移動黑色的然後它擊中550停止..而藍色的不會來向上。
爲了您和我們的緣故,請以一致且合乎邏輯的方式縮進代碼塊。更有意義的屬性名稱也不會傷害。 –
'for(long delay = 1; delay <10000000; delay ++);'最有可能被優化出來。這完全是定製繪畫的錯誤方法。有關工作示例,請參閱Java教程的[自定義繪畫](http://docs.oracle.com/javase/tutorial/uiswing/painting/)課程。 –