QT 动画透明度不起作用 QPropertyAnimation windowOpacity

来源:互联网 发布:老款电视怎么连接网络 编辑:程序博客网 时间:2024/05/27 01:40

QT 使用QPropertyAnimation 实现 控件的动画效果

构造函数如下:

QPropertyAnimation::QPropertyAnimation(QObject *target, constQByteArray &propertyName,QObject *parent = Q_NULLPTR)

target是需要动画的控件。propertyName是控件在QT助手Assistant中的 Properties值,把他们的名字作为propertyName输入就可以实现相应效果的动画。

例如透明度windowOpacity : double,名字就是windowOpacity ,然后通过

setEndValue(const QVariant &value)
setKeyValueAt(qreal step, const QVariant &value)
setKeyValues(const KeyValues &keyValues)
setStartValue(const QVariant &value)

以下四个函数设置各时间点的属性值就可以


在实际使用中窗体的透明度可以改变,但子控件的透明度却不行,但位置“geometry”动画有效果

经查询关于透明度,有一点说明:
This property holds the level of opacity for the window.
只对顶级窗口有用。

0 0
原创粉丝点击