import tool.*;
import java.awt.*;
import javax.swing.*;
public class start{
public static void main(String[] args){
test p1=new test(0,50);
test p2=new test(0,100);
test p3=new test(0,150);
test p4=new test(0,200);
Thread pt1=new Thread(p1);
Thread pt2=new Thread(p2);
Thread pt3=new Thread(p3);
Thread pt4=new Thread(p4);
JFrame frame=new JFrame();
frame.setSize(400,300);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(p1);
frame.add(p2);
frame.add(p3);
frame.add(p4);
pt1.start();
pt2.start();
pt3.start();
pt4.start();
}
///////////////////////////////////////////////////////////////////////////////
package tool;
import javax.swing.*;
import java.awt.*;
public class test extends JPanel implements Runnable{
int x,y;
public test(int x,int y){
this.x=x;
this.y=y;
}
public void paint(Graphics g){
super.paint(g);
g.drawOval(x,y,20,20);
}
public void run(){
while(x<300){
x=x+(int)((Math.random()*10)+1);
this.repaint();
try{
Thread.sleep(150);
}
catch(InterruptedException e){
e.printStackTrace();}
}
}
}
多個小球運動,為什么只有最后一個執行緒運行了,其他的都不顯示
uj5u.com熱心網友回復:
Panel用得有問題,你是在Panel里邊畫圖,最后一Panel把前邊的Panel擋住了。你要么在一個Panel里畫5個球,要么動態改變Panel的位置而不是panel內容。轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/216220.html
標籤:Java相關
上一篇:JAVAWEB用戶登錄界面
下一篇:求大聲幫忙解決一下
