Qt QWidget控件透明动画实现

Posted qq702368956

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt QWidget控件透明动画实现相关的知识,希望对你有一定的参考价值。

QWidget控件透明动画实现
要做子控件透明需要用到QGraphicsOpacityEffect类
使用例子如下代码:
QGraphicsOpacityEffect * m_pGraphicsOpacityEffect1;
QPropertyAnimation * m_pOpacityAnimation1;
 
m_pGraphicsOpacityEffect1 = new QGraphicsOpacityEffect(m_pHomeBtn);
m_pGraphicsOpacityEffect1->setOpacity(1.0);
m_pHomeBtn->setGraphicsEffect(m_pGraphicsOpacityEffect1);
 
m_pOpacityAnimation1 = new QPropertyAnimation(m_pGraphicsOpacityEffect1,"opacity",this);
m_pOpacityAnimation1->setDuration(m_nDuring);
m_pOpacityAnimation1->setStartValue(0);
m_pOpacityAnimation1->setEndValue(1.0);
m_pOpacityAnimation1->start();
QPropertyAnimation调用start可以设置 动画完成后自动delete

以上是关于Qt QWidget控件透明动画实现的主要内容,如果未能解决你的问题,请参考以下文章

QT 窗体控件的透明度设置(三种方法)

QWidget透明背景(但不是孩子)

Qt窗口透明

Qt控件焦点切换

如何在半透明的 QWidget 上播放视频?

将 QWidget 或其他 QWidget 派生控件添加到 QWindow