QPushButton图形教程

时间:2014-03-05 02:32:00

标签: qt qwidget qpushbutton qpropertyanimation

有谁知道一些很好的教程,学习如何为Qt QPushButton做一些图形/动画/设计?

我一直在找一个适合我的,但我发现没有一个真正有趣或很好解释。

我已阅读文档,但我想要一些应用程序和一些示例。此外,它可以成为一个很好的灵感来源。

1 个答案:

答案 0 :(得分:2)

因此,当您查看QPushButton或任何QWidget时,您可以在其上制作大量动画。

任何不是显式属性的东西,你都可以为它创建一个包装器并创建它的属性。

首先应检查List of all members, including inherited members上任何类的所有属性。

http://qt-project.org/doc/qt-5/qwidget-members.html

http://qt-project.org/doc/qt-5/qpropertyanimation.html

一些对动画有用的内容包括:

pos() / move()

size() / resize()

然后,如果您添加QGraphicsEffect,并为动画的属性设置动画,您也可以获得一些整洁的东西。

然后你将一些动画组合起来,以便在特定事件发生时开始,例如第一次显示,或者当它隐藏时,或者当它被悬停/进入时,或者当它被遗忘时,你也可以得到一些整洁的效果。

如果你把动画放在一个循环而不是一次拍摄,或者做一个平行动画,你可以获得很好的效果。

在一些延迟时间和多个动画中混合使用缓动曲线启动,您可以获得一些优雅的交互。

如果你继承了paintEvent,你可以放入随时间变化的任何变量,并将其发送给QPropertyAnimation

http://qt-project.org/doc/qt-5.0/qtcore/properties.html

了解动画可以做些什么的最佳地方之一是Qt示例。

http://qt-project.org/doc/qt-5/examples-animation.html

http://qt-project.org/doc/qt-5/qtwidgets-animation-animatedtiles-example.html

Animated Tile的例子很精彩,是一个很好的起点。

如果你不需要动画,只是简单的悬停样式更改,设置样式表是一种更简单的方法来实现这种效果。

希望有所帮助。