1

我有一个用 Java(不是处理 IDE)编写的处理草图,我想将它嵌入到一个 Java 小程序中,该小程序可以由 Web 浏览器的 Java 插件运行。处理草图是通过扩展一个名为 PApplet 的类来创建的,该类又扩展了 Component,因此原则上这应该很容易。事实上,指南解释了如何将它嵌入到 JFrame 中;文档也相关。问题是我对小程序的经验很少,我不知道如何修改我拥有的示例。任何人都可以帮忙吗?

4

2 回答 2

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 或其他)

于 2013-09-15T09:17:09.820 回答
0

Andrew 是对的,PApplet is aApplet(泛化、扩展等)所以基本上一个 Applet 具有的所有功能,您的 Processing PApplet 也将具有更多功能。这只是简单地导出小程序的问题。

Processing 2.0 删除了Export Applet选项,但它仍然存在于Processing 1.5.1中,您可以从Stable Releases Porcessing 下载中获得它

另一种选择是使用带有Proclipsing插件的eclipse 。该插件允许您轻松创建处理项目(PApplet 子类等)并轻松导出小程序或应用程序。虽然比最小的处理编辑器重,但您在 Eclipse 中拥有大量漂亮的工具,例如自动完成和重构等等。

再次查看您的问题,看起来有点混乱:鸡和蛋的问题:您想使用 Applet 只是因为您想将 PApplet 嵌入到 html 容器中。正如 Andrew 所提到的,您可以简单地导出您的 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?

于 2013-09-04T22:26:15.170 回答