当前位置: 首页 > 教程 > JOGL >

JOGL 使用AWT的Farme

精华
小牛编辑
122浏览
2023-03-14

JOGL 使用AWT的Farme

AWT(Abstract Window Toolkit)是一个应用程序编程接口,用于开发基于窗口的应用程序。AWT 提供的组件重量大且依赖于平台。该java.awt中的包中包含API的各种AWT类。

AWT(Abstract Window Toolkit)是一个应用程序编程接口,用于开发基于窗口的应用程序。AWT 提供的组件重量大且依赖于平台。该java.awt中的包中包含API的各种AWT类。

现在,我们将通过以下步骤使用 JOGL 类和 AWT 创建一个简单的框架: 

  • 遵循上一章《JOGL Frame框架》搭建 JOGL 的基本结构。
  • 使用 AWT 的 Frame 类创建一个框架。要使用这个类,需要导入 java.awt 包。
Frame frame =  new  Frame("xnip:AWT Frame");  
  • 现在,使用 add() 方法将 GLCanvas 类的对象与 Frame 类对象一起添加。
frame.add(gc);  
  • 在 setSize() 方法中提供所需的尺寸并使框架可见性为true。
frame.setSize( 500, 400 );  
frame.setVisible(true);  

JOGL 使用AWT的Farme 示例

在本例中,我们将使用 AWT 创建一个简单的 JOGL 框架。

package cn.xnip;

import javax.media.opengl.GLAutoDrawable;
import javax.media.opengl.GLCapabilities;
import javax.media.opengl.GLEventListener;
import javax.media.opengl.GLProfile;
import javax.media.opengl.awt.GLCanvas;
import java.awt.*;

public class AWTFrame implements GLEventListener {

    @Override
    public void init(GLAutoDrawable obj) {

    }

    @Override
    public void display(GLAutoDrawable obj) {

    }

    @Override
    public void reshape(GLAutoDrawable obj1, int obj2, int obj3, int obj4, int obj5) {

    }

    @Override
    public void dispose(GLAutoDrawable obj) {

    }

    public static void main(String[] args) {


        final GLProfile gp = GLProfile.get(GLProfile.GL4);
        GLCapabilities cap = new GLCapabilities(gp);


        final GLCanvas gc = new GLCanvas(cap);
        AWTFrame af = new AWTFrame();
        gc.addGLEventListener(af);
        gc.setSize(350, 350);

        //Now creating a frame using Frame class of AWT
        final Frame frame = new Frame("xnip:AWT Frame");

        frame.add(gc);
        frame.setSize(500, 400);
        frame.setVisible(true);
    }

} 

输出结果如下: