使QToolBar透明

使QToolBar透明,qt,qtoolbar,Qt,Qtoolbar,是否可以使QToolBar小部件背景透明 在它后面,我有一个QOpenGLWidget,我只想看到工具栏的图标。将QToolBar声明为QOpenGLWidget的子级还不够吗? 比如: QMainWindow qW; QOpenGLWidget *pOG = new QOpenGLWidget; QToolBar *pTB = new QToolBar(pOG); qW.setCentralWidget(pOG); 我用一个QFrame而不是QOpenGLWidget进行了测试,它是有效

是否可以使
QToolBar
小部件背景透明


在它后面,我有一个
QOpenGLWidget
,我只想看到工具栏的图标。

QToolBar
声明为
QOpenGLWidget
的子级还不够吗? 比如:

QMainWindow qW;

QOpenGLWidget *pOG = new QOpenGLWidget;
QToolBar *pTB = new QToolBar(pOG);

qW.setCentralWidget(pOG);

我用一个
QFrame
而不是
QOpenGLWidget
进行了测试,它是有效的。

这对我来说是有效的,QOpenGLWidget前面有一个QGroupBox:

this->viewButtonBox = new QGroupBox(tr("View"));
QPalette pal;
pal.setColor(QPalette::Background, Qt::transparent);
viewButtonBox->setPalette(pal);

//adding groupbox in front of openglwidget
QVBoxLayout* centralLayout = new QVBoxLayout;
centralLayout->addWidget(viewButtonBox);
this->setLayout(centralLayout);

QGroupBox是QOpenGLWidgets布局的一部分。

不,这不起作用。工具栏不透明,我无法移动工具栏您可以尝试
pTb->setStyleSheet(“背景:透明;”)谢谢你的回答!很抱歉,我不明白您所说的“QGroupBox是QOpenGLWidget布局的一部分”是什么意思。我添加到代码中是为了更清楚地说明如何设置布局。因此,您建议我放弃工具栏,开始使用GroupBox?不,我正在向您展示如何在QOpenGLWidget前面设置透明的QGroupBox。您的问题相当类似,因为QGroupBox和QToolBar都从QWidget继承了它们的功能。这应该为实现透明的QToolBar提供一个良好的起点。