java入门第四天作业之弹不出框的小球
上代码,看效果 上代码,看效果
注释还是不太熟练额。 注释还是不太熟练额。
package day04; import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class MyBall { public static void main(String[] args) { // TODO Auto-generated method stub JFrame frame = new JFrame("MyBall"); frame.setSize(400, 500); // 设置窗体居中 显示 // 不相对于任何组件 frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); MyPanel panel = new MyPanel(); frame.add(panel); panel.run(); } } class MyPanel extends JPanel { int x = 30; int y = 30; int z = 0;//判断是++ 还是 -- int w = 0;//判断横向移动 public void paint(Graphics g) { super.paint(g); g.setColor(Color.BLACK); g.fillOval(x, y, 30, 30); } public void run() { while (true) { if (z == 0) { y++; //判断横向 if (w == 0) { x ++; if ( x == 355) { w = 1; } } else if (w == 1) { x--; if (x == 0) { w = 0; } } //判断结束 if (y == 435) { z = 1; } } else if (z == 1) { y--; //判断横向 if (w == 0) { x++; if ( x== 355) { w = 1; } } else if (w == 1) { x--; if (x == 0) { w = 0; } } //判断结束 if (y == 0) { z = 0; } } repaint(); try { Thread.sleep(10); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }package day04; import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class MyBall { public static void main(String[] args) { // TODO Auto-generated method stub JFrame frame = new JFrame("MyBall"); frame.setSize(400, 500); // 设置窗体居中 显示 // 不相对于任何组件 frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); MyPanel panel = new MyPanel(); frame.add(panel); panel.run(); } } class MyPanel extends JPanel { int x = 30; int y = 30; int z = 0;//判断是++ 还是 -- int w = 0;//判断横向移动 public void paint(Graphics g) { super.paint(g); g.setColor(Color.BLACK); g.fillOval(x, y, 30, 30); } public void run() { while (true) { if (z == 0) { y++; //判断横向 if (w == 0) { x ++; if ( x == 355) { w = 1; } } else if (w == 1) { x--; if (x == 0) { w = 0; } } //判断结束 if (y == 435) { z = 1; } } else if (z == 1) { y--; //判断横向 if (w == 0) { x++; if ( x== 355) { w = 1; } } else if (w == 1) { x--; if (x == 0) { w = 0; } } //判断结束 if (y == 0) { z = 0; } } repaint(); try { Thread.sleep(10); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
上一篇:
IDEA上Java项目控制台中文乱码