这个帖子是说QT 对WebGL的支持状况,大概就是linux下面支持,但是windows下面可能有点问题。
测试代码如下:
#include <QApplication>
#include <QWebView>
int main(int argc, char **argv) {
QApplication app(argc, argv);
QWebView view;
view.setUrl(QUrl("http://www.webkit.org/blog-files/webgl/SpiritBox.html"));
view.show();
return app.exec();
}
python的测试代码如下,本机是ubuntu16.04,运行还算正常,没得问题
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtWebEngineWidgets import *
class MainWindow(QMainWindow):
def __init__(self):
super(MainWindow, self).__init__()
self.setWindowTitle('加载外部网页的例子')
self.setGeometry(5,30,1355,730)
self.browser=QWebEngineView()
#加载外部的web界面
self.browser.load(
QUrl('http://www.webkit.org/blog-files/webgl/SpiritBox.html'))
self.setCentralWidget(self.browser)
if __name__ == '__main__':
app=QApplication(sys.argv)
win=MainWindow()
win.show()
app.exit(app.exec_())
在运行的时候出现了黑屏现象,并且终端有如下报错输出:
QOpenGLShaderProgram::uniformLocation(qt_Matrix): shader program is not linked
QOpenGLShaderProgram: could not create shader program
QOpenGLShader: could not create shader
QOpenGLShader: could not create shader
shader compilation failed:
解决方案如下:
https://blog.csdn.net/qq_36104478/article/details/90238894