C++ QT中的透明小部件

C++ QT中的透明小部件,c++,qt,widget,qwidget,C++,Qt,Widget,Qwidget,我想在一个小部件上画一个圆圈,圆圈内的背景屏幕应该是可见的,也就是说,在小部件上应该只看到圆圈的边框/周长。 小部件的其余部分应该是透明的。 我试过: 1) setStyleSheet(“背景:透明;” 2) setAttribute(Qt::WA_半透明背景,true) 3) 覆盖paintEvent(QPaintEvent*event) 上述所有方法都不起作用。setAutoFillBackground()为false。 我是刚刚在谷歌上找到的Qt及以上解决方案的新手。 请帮忙。这样就可以了

我想在一个小部件上画一个圆圈,圆圈内的背景屏幕应该是可见的,也就是说,在小部件上应该只看到圆圈的边框/周长。 小部件的其余部分应该是透明的。 我试过: 1)
setStyleSheet(“背景:透明;”
2)
setAttribute(Qt::WA_半透明背景,true)
3) 
覆盖paintEvent(QPaintEvent*event)

上述所有方法都不起作用。setAutoFillBackground()为false。 我是刚刚在谷歌上找到的Qt及以上解决方案的新手。
请帮忙。

这样就可以了:D

#include <QApplication>
#include <QtGui/QMainWindow>
#include <QtGui/QPushButton>
#include <QtGui/QHBoxLayout>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QMainWindow *win=new QMainWindow(0);
    win->setAttribute(Qt::WA_TranslucentBackground,true);
    win->show();
    return a.exec();
}
#包括
#包括
#包括
#包括
int main(int argc,char*argv[])
{
质量保证申请a(argc、argv);
QMainWindow*win=新的QMainWindow(0);
win->setAttribute(Qt::WA_半透明背景,true);
赢->秀();
返回a.exec();
}

这将完成任务:D

#include <QApplication>
#include <QtGui/QMainWindow>
#include <QtGui/QPushButton>
#include <QtGui/QHBoxLayout>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QMainWindow *win=new QMainWindow(0);
    win->setAttribute(Qt::WA_TranslucentBackground,true);
    win->show();
    return a.exec();
}
#包括
#包括
#包括
#包括
int main(int argc,char*argv[])
{
质量保证申请a(argc、argv);
QMainWindow*win=新的QMainWindow(0);
win->setAttribute(Qt::WA_半透明背景,true);
赢->秀();
返回a.exec();
}

如果在窗口上使用该功能,则会产生这种影响。另请参见(也可参考
设置掩码
文档)。

如果在窗口上使用此功能,则会产生影响。另请参见(也可参考
设置掩码
文档)。

我已经阅读了一些相关内容,其中,此功能仅适用于支持windows alpha通道绘图的系统!!我读过一些文章,其中,此功能仅适用于支持windows alpha通道绘制的系统!!