gpt4 book ai didi

java - 导出 JOGL 小程序并嵌入到 html 页面中

转载 作者:行者123 更新时间:2023-11-30 07:35:08 25 4
gpt4 key购买 nike

我用 java 和 JOGL 测试了 opengl。我有一个很好的结果,我想把它发布在网上,但我有一个问题。我在 eclipse 中,我正在使用 JOGL 测试一个 Applet。

编辑:感谢 Ricket 的回答,它解决了这个问题

首先我有这个运行时错误(但程序运行正常):

java.lang.IllegalArgumentException:
在容器中添加一个窗口

编辑:但它仍然不起作用:

然后我发现这个非常清楚page我照吩咐做了。我用浏览器打开 html,下载了库,但它停止在 Starting applet AppletHelloWorld,因为这是我给我的 applet 的名称。

也许我遗漏了主要功能或正确导出 jar 之类的东西?

这是我的主要代码:

public class AppletHelloWorld extends Applet 
{


public static void main(String[] args)
{
JFrame fr=new JFrame();
fr.setBounds(0,0,1015,600);
fr.add(new AppletHelloWorld());

fr.setVisible(true);
}
public void init()
{
setLayout(null);
MyJOGLProject canvas = new MyJOGLProject(); //MyJOGLProject extends JFrame
canvas.run(); // this do setVisible(true)
} //....

最佳答案

正如错误所说,您正在尝试向容器中添加一个窗口。 JFrame 是一个窗口。您不能将 JFrame 添加到任何东西,包括容器。我想您可能不知道 JFrame 是什么,或者不知道 Container 是什么。

理想情况下,您应该让 MyJOGLProject 扩展 GLEventListener。然后你的 init 函数会创建一个新的 GLCanvas,向它添加一个 MyJOGLProject 的实例(通过 addGLEventListener),然后将 GLCanvas 添加到你的小程序。

或者,如果您不介意小程序弹出 JFrame,则简化您的 init 方法:

public void init() {
setLayout(null);
MyJOGLProject canvas = new MyJOGLProject();
canvas.setVisible(true);
}

应该这样做。

关于java - 导出 JOGL 小程序并嵌入到 html 页面中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4675161/

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