本序列几乎是按照LearnOpenGL在QT上进行实现:
(1) 头文件
#ifndef COPENGLWIDGETHELLOWIDGET_H
#define COPENGLWIDGETHELLOWIDGET_H
/*
* 控件名称:Hello QOpenGLWidget
*
*
* 注意:STD C++ Version >= C++11
* Author: hsw
*
*/
#include <QPainter>
#include <QPaintEngine>
#include <QKeyEvent>
#include <QDebug>
#include <QCoreApplication>
#include <QOpenGLWidget> // OpenGLWidget
#include <QOpenGLFunctions> // OpenGL函数
class COpenGLWidgetHelloWidget : public QOpenGLWidget, public QOpenGLFunctions
{
public:
COpenGLWidgetHelloWidget(QWidget* parent = 0);
~COpenGLWidgetHelloWidget();
protected:
void initializeGL() override;
void resizeGL(int width, int height) override;
void paintGL() override;
protected:
bool eventFilter(QObject *obj, QEvent *event);
signals:
void m_openglCloseSgn();
private:
QWidget* m_pParent;
};
#endif // COPENGLWIDGETHELLOWIDGET_H