原创

用Q_PROPERTY增加Qt现有类的属性和方法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://shazhenyu.blog.csdn.net/article/details/52625558

改变现有类,比如你要用到一个类的pos、size等。然后Qt提供的这个类没有提供对应方法,我们改怎么办呢?

QT的帮助文档中这样写道:


应用实例:

用Qt的Graphics体系的朋友们可能会发现这个问题,Qt的QGraphicsItem和QGraphicsObject两个类的动画属性中,只有opacity这个动画,却没有geometry动画属性。而geometry动画效果在QPropertyAnimation中是很常用的动画效果。我们通过Q_PROPERTY这个宏来增加这个geometry动画效果。我们看到Qt的源码中这样定义了opacity:


如果我们直接如下这么使用geometry这个动画效果:


编译器会报错告诉我们没有定义geometry这个动画效果,那我们在我们的类中定义宏:




这样,我们的动画效果中就有了geometry哦~

文章最后发布于: 2016-09-22 18:17:08
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 代码科技 设计师: Amelia_0503

分享到微信朋友圈

×

扫一扫,手机浏览