gpt4 book ai didi

c++ - opengl + Qtwidget 不工作

转载 作者:行者123 更新时间:2023-11-28 06:47:48 25 4
gpt4 key购买 nike

我在 qt 应用程序中创建了一个 opengl 程序,我为此使用了这个视频教程 http://www.youtube.com/watch?v=1nzHSkY4K18 .但是我的小部件不起作用,它确实显示图像,只显示屏幕后面的图像。这个和一个例子(来 self 的 opengl View ):

http://uploaddeimagens.com.br/imagens/screenshot_from_2014-07-09_02_44_19-png

这是我的代码:

我的 Qtwidget View :

#include "telafotos.h"
#include "ui_telafotos.h"

TelaFotos::TelaFotos(QWidget *parent) :
QWidget(parent),
ui(new Ui::TelaFotos)
{
ui->setupUi(this);
}

TelaFotos::~TelaFotos()
{
delete ui;
}

我的 QGLWidget:

    #include "imagemfestivalgl.h"

ImagemFestivalGl::ImagemFestivalGl(QWidget *parent) :
QGLWidget(parent)
{
}


void ImagemFestivalGl::initializeGL(){
glClearColor(1,1,0,1);
}

void ImagemFestivalGl::paintGL(){

}

void ImagemFestivalGl::resizeGL(int w, int h){

}

最佳答案

需要在resizeGL中设置视口(viewport)

void ImagemFestivalGl::resizeGL(int w, int h){
glViewport (0,0,w,h);
}

并清除 paintGL 中的绘制缓冲区

void ImagemFestivalGl::paintGL(){
glClear (GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT);
}

这应该会产生一个空白区域

关于c++ - opengl + Qtwidget 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24646214/

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