欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Qt之窗口透明,绘画不透明

程序员文章站 2022-07-13 23:34:52
...

 构造函数里:

             //设置无边界窗口并顶置

             setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);

            //窗口设置透明

setAttribute(Qt::WA_TranslucentBackground,true);

           

void Widget::paintEvent(QPaintEvent *event)

{

    QPainter painter(this);

#ifdef WIN32

    painter.fillRect(this->rect(), QColor(255, 255, 255, 1));

#else

    //mac电脑上需要将透明度设置为15,小于15鼠标控制画不上,15是临界值,是根据测试得来的,没有具体研究

    painter.fillRect(this->rect(), QColor(255, 255, 255, 15));

#endif

}
相关标签: QT qt4 window