我有一个用Java编写的Processing草图(不是处理IDE),我想将它嵌入到一个可以通过Web浏览器的java插件运行的Java applet中。处理草图是通过扩展一个名为PApplet的类来创建的,而PApplet又扩展了Component,所以原则上这应该很容易。确实,this指南解释了如何将其嵌入到JFrame中; this文档也很重要。问题是我对applet的经验很少,我无法弄清楚如何修改我的示例。有人可以帮忙吗?
答案 0 :(得分:0)
Andrew是对的,PApplet is a
Applet(概括,扩展等)基本上所有Applet都具有的功能,你的Processing PApplet也会有更多功能。这只是简单地导出applet的问题。
Processing 2.0删除了导出小程序选项,但它仍然存在于处理1.5.1 中,您可以从稳定版本 {获取{3}}
另一种方法是将Porcessing downloads与eclipse插件一起使用。 该插件允许您轻松创建Processing项目(PApplet子类等) 并且还可以轻松导出applet或应用程序。虽然比最小的Processing编辑器重,但你在eclipse中有很多漂亮的工具,比如自动完成和重构,仅举几例。
再次查看你的问题,它看起来有点混乱:鸡和蛋的问题:你想要使用Applet只是因为你想将你的PApplet嵌入到html容器中。 正如安德鲁所说,你可以简单地导出你的PApplet并嵌入它(html文件也会生成)。 使用您的方法:使用包含PApplet的单独Applet,您可以执行以下操作:
import java.applet.Applet;
import processing.core.PApplet;
public class CApplet extends Applet{
public CApplet(){
PApplet sketch = new YourPAppletClassNameHere();
sketch.init();
add(sketch);
}
}
然后你需要导出这个小程序,对吗?为什么这样做而不是简单地首先导出PApplet?
答案 1 :(得分:0)
需要两个单独的类:
import java.applet.Applet;
import processing.core.PApplet;
public class CApplet extends Applet
{
public CApplet()
{
PApplet sketch = new MyP5Applet();
sketch.init();
add(sketch);
}
}
和
import processing.core.PApplet;
public class MyP5Applet extends PApplet
{
public void setup()
{
size(100, 100);
// ...
}
public void draw()
{
rect(10, 10, 80, 80);
// ...
}
}
然后只运行CApplet(来自Eclipse,AppletRunner,HTML或其他)