【问题标题】:Qt + gif + alphaQt + gif + 阿尔法
【发布时间】:2025-12-18 18:15:01
【问题描述】:

如何使用 QMovie 在 QLabel 中制作透明背景? Gif 已经设置了透明度。 我需要做一些类似 KamikadzeCat 或 Felix 的事情。是猫,在主屏幕上做一些事情。我试着写:

QLabel lb;
QMovie mv1("ooo.gif");
lb.setMovie(&mv1);
mv1.start();
lb.setWindowFlags(Qt::FramelessWindowHint);
lb.show();

我也试着写了:

lb.setStyleSheet("background-color: rgba(225,255,255,0);");

但它根本不工作。 如果第一次标签是灰色背景,第二次我尝试用rgba写很多数字,但没用。

【问题讨论】:

    标签: qt gif alpha


    【解决方案1】:

    您可以将 Qt::WA_TranslucentBackground 属性设置为您的 QLabel 以获得半透明背景:

    yourLabel->setAttribute( Qt::WA_TranslucentBackground, true );
    

    【讨论】:

    • 非常感谢!!我试图解决这个问题大约 2 天,并认为我不能这样做,但你救了我!