Congratulations to our 2022 Qt Champions!

Layering a QGLWidget on top of a qwidget

  • I'm writing what is essentially a multi-trace oscilloscope viewer. It appears that the most efficient way to draw the traces of the signal is to use raw OpenGL draw commands, i.e., in my paintGL() :

    glVertexPointer(2, GL_FLOAT, 0, data.constData());

    Ideally, I want to have the borders and tick marks for this line (which is constantly moving) drawn in a QWidget that lives below the qglwidget. However, I can't seem to get this to work. If I don't make the QGLWidget draw a background, I see through to my desktop underneath. Any hints at how to stack a transparent QGLWidget on top of a QWidget?


  • Why not just use OpenGL to also draw the borders and tick marks?

  • That's the current implementation, but it ends up being somewhat klugy. Ideally, I'd like to make the background stuff easily modifiable/"skinable".

Log in to reply