我想运用多线程 使一串字符从左向右运动 但是我的不动 希望高手给我指点 改一下!!
import java.applet.*;
import java.awt.Graphics;
public class HelloWorld extends Applet implements Runnable{
Thread my;
int i;
public void init(){
my=new Thread();
my.start();
}
public void run(){ while(true)
{
if(i<300)
i=i+10;
else
i=0;
repaint();
try
{
my.sleep(50);
}
catch(InterruptedException ie)
{
System.out.println("Error: " + ie);
}
}}
public void paint(Graphics g){
g.drawString("HEllo World!",i,50);
}
}
import java.applet.*;
import java.awt.Graphics;
public class HelloWorld extends Applet implements Runnable{
Thread my;
int i;
public void init(){
my=new Thread();
my.start();
}
public void run(){ while(true)
{
if(i<300)
i=i+10;
else
i=0;
repaint();
try
{
my.sleep(50);
}
catch(InterruptedException ie)
{
System.out.println("Error: " + ie);
}
}}
public void paint(Graphics g){
g.drawString("HEllo World!",i,50);
}
}
my=new Thread();
改成 my=new Thread(this);
就想楼上说的那样new
import java.awt.Graphics;
public class HelloWorld extends Applet implements Runnable{
Thread my;
int i=99;
boolean right = true;
public void init(){
my=new Thread(this);
my.start(); }public void run(){ while(true)
{
if(right)
{
i=i+3;
if(i==270)
right=false;
}
else
{
i=i-3;
if(i==99)
right=true;
}
repaint(); try
{
Thread.sleep(150);
}
catch(InterruptedException ie)
{
System.out.println("Error: " + ie);
}
}}
public void paint(Graphics g){
g.drawString("HEllo World!",i,50);
}
}