다른 위젯을 아래에두고 QOpenGLWidget 을 투명하게 만들면 예상 한 결과가 나오지 않는다. 아래 화면의 경우처럼 아래의 위젯은 보이지 않는다.
실제로 QOpenGLWidget 은 OpenGL이 아닌 다른 모든 일반 위젯보다 먼저 작성되므로 투명 위젯 유형의 렌더링을 실행할 수 없기 때문이다. QOpenGLWidget 위에 위젯을 배치하는 것과 같은 경우는 예상대로 작동한다.
절대적으로 필요한 경우, QOpenGLWidget에서 Qt::WA_AlwaysStackOnTop 속성을 설정하여이 제한 사항을 극복 할 수 있다.
그러나 이것은 렌더링 스택 순서를 깨뜨린다. 예를 들어 QOpenGLWidget 위에 다른 위젯을 가질 수는 없다. 따라서 다른 위젯을 볼 수있는 반투명 QOpenGLWidget 이 필요한 상황에서만 사용해야한다.
아래에 다른 위젯이없고 반투명 창이있는 경우에는 적용되지 않는다. 이 경우 최상위 창에서 Qt::WA_TranslucentBackground 를 설정하는 전통적인 접근 방식으로 충분하다.
투명 영역이 QOpenGLWidget 에서만 필요한 경우 Qt::WA_TranslucentBackground 를 활성화 한 후 Qt::WA_NoSystemBackground 를 false로 다시 설정해야한다. 또한 시스템에 따라 setFormat() 을 통해 QOpenGLWidget 의 컨텍스트에 대한 알파 채널을 요청해야 할 수도 있다.