我尝试从一个类创建两个移动对象。我想控制它们,但JApplet不会打开线程。
我的代码:
import java.awt.Graphics;
import javax.swing.JApplet;
class RunnableThread extends JApplet implements Runnable{
Thread runner;
String name;
public RunnableThread(String namex){
name=namex;
}
public void init(){
setSize(200,300);
}
public void paint(Graphics g){
g.drawLine(20, 20, 50, 50);
}
public void run(){
System.out.println("test"+name);
}
}
import java.util.logging.Level;
import java.util.logging.Logger;
public class RunnableTest{
public static void main(String args[]){
RunnableThread bt1=new RunnableThread("test 1");
RunnableThread bt2=new RunnableThread("test 2");
Thread btt1=new Thread(bt1);
Thread btt2=new Thread(bt2);
btt2.start();
btt1.start();
}
}
答案 0 :(得分:3)
您无法通过main方法运行JApplet。在尝试在applet中进行后台线程之前(可以这样做),请先阅读applet教程,了解如何创建和运行applet。
当你让简单的applet工作并想要回到这个时,不要让你的JApplet类实现Runnable,而是将该责任委托给另一个类。
请从这里开始:Getting Started with Applets
答案 1 :(得分:1)
您无法以这种方式实现JApplet。 applet可以在没有main方法的情况下运行,而不是你如何运行。有关如何将applet作为applet和应用程序运行的更加用户友好的指南,请阅读this tutorial它非常用户友好并且非常好地解释了applet。