永发信息网

想用java做个运动小球,球出来了但不会动,不知道哪里有问题

答案:2  悬赏:80  手机版
解决时间 2021-03-19 19:17
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
public class Ball1 {
public static void main (String args[]){
Frame w=new Frame();
w.setSize(400, 600);
w.setBackground(Color.black);
MyPanel mp=new MyPanel();
w.add(mp);
Thread t=new Thread();
t.start();
w.show();
w.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
}
class MyPanel extends Panel implements Runnable{
int x=100;
int y=0;
public void paint(Graphics g){
g.setColor(Color.pink);
g.fillOval(x, y, 40, 40);
}
public void run() {
while(true) {
x ++;
y ++;
try {
Thread.sleep(6);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
repaint();
}
}
}
最佳答案
你的运动线程没有启动,你是通过runnable接口实现线程的实例线程类时没有把runnable传进去。
这样改
MyPanel mp=new MyPanel();
w.add(mp);
Thread t=new Thread(mp);//把接口传给线程类
t.start();
就好了
全部回答
你自己圆心坐标是知道的,半径也是确定的,然后用math里面的三角函数可以求得圆周上的所有点的坐标。实际上你并不需要求的每个点的坐标,你可以假定5度一个点,用个循环来取点的坐标,然后放到一个集合里面,然后你就用集合里面点的坐标画小的实心圆就行了。定时画,这样它的运行轨迹就是在圆上运动。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
炫舞魔法屋用两个非卖翅膀有多大几率换出灵幻
红绿灯里面有内置摄像头吗?
我成包10亩鱼塘想找4个人联合办合作社可以么?
大连中音音乐学校奈曼分校地址有知道的么?有
法师职业大厅最后任务怎么举起武器
王冬阳这个名字如何
像……像……造句
韩剧,韩国综艺里经常说的那句抱怨的话是什么
成语广发博众
煮熟的牛肉保存需要放盐吗
金雁南街/YM84(路口)怎么去啊,有知道地址的
安卓手机怎样下载车轮行车记录仪
王春艳藏文怎么写
电流通过电阻为什么会有电势差
是的,人的一生是拼搏的一生.只有
推荐资讯
电脑登qq可以看见不经常联系人这一栏吗
唐山到多少公里
华生净水器在新款里冷暖一体机多少钱一台
贝玲妃眼影好还是pupa眼影好
青龙峡漂流地址在哪,我要去那里办事
别人拿自己身份信息办理借记卡怎么办
通货膨胀系数每月什么时间公布
什么第一人称单机游戏好玩,并且要有许多女兵
天涯明月刀 海上地图我没有的地方 别人有 带
不踬于山,而踬于垤什么意思
湖北荆州有什么水果
作文《游胡杨林有感》
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?