I found out that this will happen in QOpenGLWindow by QSurfaceFormat and setAlphaBufferSize(8);
Look at this example:
in mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QOpenGLWindow>
class MainWindow: public QOpenGLWindow
{
    Q_OBJECT
public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
    // QOpenGLWindow interface
protected:
    void  initializeGL();
    void  resizeGL(int w, int h);
    void  paintGL();
    // QWindow interface
    void  resizeEvent(QResizeEvent *);
    // QPaintDeviceWindow interface
    void  paintEvent(QPaintEvent *event);
};
#endif // MAINWINDOW_H
in mainwindow.cpp
#include "mainwindow.h"
MainWindow::MainWindow(QWidget *parent)
{
}
MainWindow::~MainWindow()
{
}
void  MainWindow::initializeGL()
{
    // Set the transparency to the scene to use the transparency of the fragment shader
    glEnable(GL_BLEND);
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
    // set the background color = clear color
    glClearColor(0.0f, 0.0f, 0.0f, .0f);
    glClear(GL_COLOR_BUFFER_BIT);
}
void  MainWindow::resizeGL(int w, int h)
{
}
void  MainWindow::paintGL()
{
}
void  MainWindow::resizeEvent(QResizeEvent *)
{
}
void  MainWindow::paintEvent(QPaintEvent *event)
{
    paintGL();
}
and finally in main.cpp
#include "mainwindow.h"
#include <QGuiApplication>
int  main(int argc, char *argv[])
{
    QGuiApplication  app(argc, argv);
    QSurfaceFormat   format;
    format.setRenderableType(QSurfaceFormat::OpenGL);
    format.setProfile(QSurfaceFormat::CoreProfile);
    format.setVersion(3, 3);
    format.setAlphaBufferSize(8);
    MainWindow  w;
    w.setFormat(format);
    w.resize(640, 480);
    w.show();
    return app.exec();
}
I w.setFormat(format); which means that QOpenGLWindow or MainWindow not QOpenGLContext.
This will be the Result:
