我得到了第20行的错误(标记为)对于.createGLCanvas,我收到一条错误说“方法createGLCanvas(GLCapabilities)未定义类型GLDrawableFactory”这是什么意思?我没有导入我想要导入的东西吗?
import javax.media.opengl.*;
import java.awt.Color;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.media.opengl.GL;
import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCanvas;
import javax.media.opengl.GLEventListener;
import java.awt.Canvas;
import javax.swing.JPanel;
public class Forest{//open forest
public static void main(String[] args)
{
Frame frame = new Frame("Hello World");
20: GLCanvas canvas = GLDrawableFactory.getFactory().createGLCanvas(new GLCapabilities());
frame.add(canvas);
frame.setSize(300, 300);
frame.setBackground(Color.WHITE);
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
frame.show();
}//close forest
}
答案 0 :(得分:1)
这意味着GLDrawableFactory上没有名为createGLCanvas
的方法。所以你需要找出要调用的内容。
答案 1 :(得分:1)
重点是,根据javadoc,应该支持这种方法:
GLCanvas createGLCanvas(GLCapabilities capabilities)
我认为您应该再次检查您的类路径。你在用什么罐子?你从哪里下载的?什么是jar版本?检查所有这些并在编写代码时使用描述您的版本库的相应API文档。
答案 2 :(得分:0)
根据this thread,正确的方法是GLCanvas canvas = new GLCanvas();
。这似乎代表了API的变化。