Qt animation

前两天在PyQt的qss文档上面看到一个widget-animation-duration的属性,不太知道怎么用,有没有知道的朋友告知一下?

该回答引用GPTᴼᴾᴱᴺᴬᴵ
widget-animation-duration 是用于设置 Qt Style Sheets 中动画的持续时间的属性,单位为毫秒。它可以被用于任何可以应用 Qt Style Sheets 的 Qt 控件上,如 QWidget,QPushButton,QLabel 等。

举个例子,你可以这样在 Qt Style Sheets 中设置一个 2 秒钟的闪烁动画效果:

QLabel {
    background-color: white;
    color: black;
    animation: blinker 2000ms linear infinite;
}

@keyframes blinker {
    50% {
        opacity: 0;
    }
}


其中 animation 属性指定了动画名称(blinker),持续时间(2000ms),动画类型(linear)以及重复次数(infinite)。@keyframes 则定义了 blinker 这个动画的具体效果,这里定义了一个从完全不透明到完全透明再到不透明的闪烁效果。

注意,在使用 widget-animation-duration 属性时,你需要确保你的 Qt 版本支持它。根据 Qt 官方文档,该属性在 Qt 5.3 版本之后才被引入。

小魔女参考了bing和GPT部分内容调写:
PyQt的qss文档中的widget-animation-duration属性可以用来控制动画的持续时间。它是一个整数属性,单位是毫秒,可以在Qt Style Sheets中设置。例如,要设置一个持续时间为1000毫秒的动画,可以在Qt Style Sheets中写:

QWidget {
    widget-animation-duration: 1000;
}

这样,当QWidget上的动画被触发时,它就会持续1000毫秒,也就是1秒。这个属性可以用来控制动画的持续时间,从而让动画看起来更加流畅,也可以让动画看起来更慢,从而让用户有更多的时间去理解动画的意义。
回答不易,记得采纳呀。