QT基础——17不规则窗口+呼吸动画中遇到的问题

需求:做一个不规则的窗口,窗口上的一部分在做呼吸,如下图:


    首先,不规则窗口的实现:新建QWidget项目,在paintEvent事件中加载图片,然后将widget窗体去掉边框同时设置为透明,这样一个不规则的窗体就做出来了。

        然后,为了使这个图片中的某一部分做呼吸效果,想到一种方法:将图片分离成两张图片,一张图片的透明度不变,在定时器中实时改变另一张图片的透明度,这样中间的小心就会出现呼吸的效果。

        但是在同一个widget的paintEvent中加载两个图片,改变透明度的时候没办法做到只改变其中一个张图片的透明度。

        于是新建了一个widget类,但是没办法设置这个widget的大小和背景色,查询发现如果想要设置widget的大小和背景色必须在paintEvent时间中加入一段代码:


加上这段代码后可以设置widget的大小但是不能移动,在更新画图事件的时候也不能连续起来,最后将这段代码注释掉,设置大小和移动是在窗体的ui界面里面设置的。

猜你喜欢

转载自blog.csdn.net/fang_yang_wa/article/details/79592038