gpt4 book ai didi

Java 错误 : cannot cast to java. applet.Eclipse 中的 Applet

转载 作者:搜寻专家 更新时间:2023-11-01 03:00:55 28 4
gpt4 key购买 nike

所以这里是不会在 Eclipse 中编译的非常简单的代码:

import processing.core.*;

public class MyPApplet extends PApplet {
}

我试图将它作为 Java Applet 运行,但出现错误:

java.lang.ClassCastException: MyPApplet cannot be cast to java.applet.Applet

问题是 PAppletprocessing 包中的一个类,它扩展了 java.applet.AppletMyPApplet 扩展了 PApplet,但我仍然遇到此错误。这没有道理。为什么不能将 MyPApplet 转换为 java.applet.Applet

有人可以帮忙吗?

最佳答案

正如 George 所说,从 Processing 3 开始,PApplet 不再扩展 Applet

但我建议使用 runSketch() 函数来运行您的草图,而不是回到旧版本的 Processing:

public class MyPapplet extends PApplet {

public static void main(String... args){
String[] pArgs = {"MyPapplet "};
MyPapplet mp = new MyPapplet ();
PApplet.runSketch(pArgs, mp);
}

public void settings() {
size(200, 100);
}
public void draw() {
background(255);
fill(0);
ellipse(100, 50, 10, 10);
}
}

如果您确实需要访问底层 native 组件,则必须根据您使用的渲染器编写代码。以下是使用默认渲染器的方法:

PSurfaceAWT awtSurface = (PSurfaceAWT)mp.surface;
PSurfaceAWT.SmoothCanvas smoothCanvas = (PSurfaceAWT.SmoothCanvas)awtSurface.getNative();

但是第一种方法对大多数人来说应该足够好了,所以先试试吧。

关于Java 错误 : cannot cast to java. applet.Eclipse 中的 Applet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34716460/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com