原文链接:Qt 图形特效(Graphics Effect)介绍

QGraphicsEffect也是Qt-4.6引入的一个新功能。它让给图形元素QGraphicsItem增加更佳视觉效果的编程变得非常简单。

先来看几张效果图。

上图中最上面的那个图片是没有使用QGraphicsEffect处理的原图,下面的四个图片分别代表了模糊,变色,透明和阴影效果。对应使用了 QGraphicsEffect的4个子类QGraphicsBlurEffect, QGraphicsColorizeEffect, QGraphicsDropShadowEffect, 和 QGraphicsOpacityEffect.下面分别介绍它们。

QGraphicsBlurEffect
该类用应产生模糊效果,主要函数setBlurRadius(qreal blurRadius),用于控制图形元素的模糊度,数值越大越模糊。使用该类例子如下

QGraphicsBlurEffect *e0 = new QGraphicsBlurEffect(this);
e0->setBlurRadius(0.2);
item[0]->setGraphicsEffect(e1);//item[0] 为QGraphicsItem指针

QGraphicsColorizeEffect
该类提供了使用另外一种颜色对当前图形的一种着色功能。主要函数是setColor(QColor)和setStrength (qreal strength),指定了着色和着色强度。使用该类例子如下

QGraphicsColorizeEffect *e1 = new QGraphicsColorizeEffect(this);
e1->setColor(QColor(0,0,192));
item[1]->setGraphicsEffect(e1);

QGraphicsDropShadowEffect
该类提供了图形元素的阴影效果,用于增加立体感。主要设置函数有3个,setColor()用于设定阴影的颜色,setBlurRadius()用于设定 阴影的模糊度,setOffset (qreal dx,qreal dy)用于设定在哪个方向产生阴影效果,如果dx为负数,则阴影在图形元素的左边。使用该类例子如下

QGraphicsDropShadowEffect *e2 = new QGraphicsDropShadowEffect(this);
e2->setOffset(8,8);
item[2]->setGraphicsEffect(e2);

QGraphicsOpacityEffect
该类用于图形元素的透明效果,主要函数是setOpacity(qreal opacity),用于设置透明度,参数值在0和1.0之间。也可以设置部分透明效果,需要调用的函数是setOpacityMask (QBrush mask)。使用该类例子如下

QGraphicsOpacityEffect *e3 = new QGraphicsOpacityEffect(this);
e3->setOpacity(0.7);
item[3]->setGraphicsEffect(e3);

下面我是写的例子代码和截图。

最后值得一提的是,这些效果是可以互相组合的。如果能把这些效果和Qt的动画Animation API结合起来,写出的程序就更漂亮了。
$QTSRC/examples/effect目录下面有些例子可以参考。

Tags: Qt4.6, 特效
This entry was posted on Saturday, February 6th, 2010 at 10:43 pm and is filed under C++, Qt技术. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, ortrackback from your own site.

转载于:https://www.cnblogs.com/lvdongjie/p/4366086.html

Qt 图形特效(Graphics Effect)介绍相关推荐

  1. Qt图形测绘窗口部件介绍

    Qt 图形测绘窗口部件,主要使用第三方窗口部件: 1.Qwt:http://qwt.sourceforge.net 开源免费 2.GraphPak: http://www.ics.com  收费 3. ...

  2. Android/Linux 子系统Graphics图形栈入门普法介绍

        Android/Linux 子系统Graphics图形栈入门普法介绍 写在最前面   由于工作原因,最近在公司做了一个关于Android/Linux 子系统Graphics图形栈入门相关知识的 ...

  3. Qt图形视图框架详解-安晓辉-专题视频课程

    Qt图形视图框架详解-12227人已学习 课程介绍         介绍Qt中的Graphics View Framework,涉及View.Scene.Item的关系,如何自定义QGraphicsI ...

  4. Qt 图形视图框架中的事件处理和传播

    目录名字 Qt 图形视图框架中的事件处理和传播 要点: Qt 图形视图框架中的事件处理和传播 图形视图框架在一些动画类的应用程序上经常会用到.该框架中的事件处理与传播机制也是经常会涉及. 程序设计核心 ...

  5. QT 中的 Graphics View 系统

    这个框架是一个相对成熟的渲染引擎的上层框架,通常也可以会叫做 Scene - View. 在QT中,GraphicsView是一个与QWdiget系列一点点不一样的系统.这个系统主要由下面几个框架类构 ...

  6. Qt中的UI文件介绍

    UI文件是什么? .ui.ui.ui通常是指Qt设计师设计出来的界面文件的后缀,它本质上是一个标准XML格式的文本文件,需要通过uicuicuic工具将其转换为项目中可用的ui_∗.hui\_*.hu ...

  7. QT图形对象:常规界面设计

    一.窗口构思 通过设计一个简单界面,实现相关界面的基本操作函数.基本界面布局,左边是卷帘窗按钮工具箱,右边是图像显示界面. 对于此项目如何实现,请看下列阐述. 左侧工具箱设计 如下图,在容器tooBo ...

  8. Qt图形界面编程入门(4)

    构造函数和析构函数 构造函数是一个与类同名的特殊的公有成员函数. 创建类对象时构造函数会被调用,且只调用一次/ 构造函数无返回类型. ·  默认构造函数格式: 类名(){.......} Accoun ...

  9. Qt工作笔记-QGraphics重设场景坐标【标签:Qt图形框架】

    Qt图形框架里面场景的坐标是以最中间为0,0点 作为新一辈的程序员,我是感觉到很新颖,但为了兼容其他的程序(图形要生成坐标,给其他程序读),要重设坐标点,把他搞为最左上为0,0点. 当没重设坐标点时, ...

最新文章

  1. 修改ceph-disk源码,增加指定ceph.conf部署osd的功能
  2. liferay中使用自己的数据库
  3. Python补充01 序列的方法
  4. VBA实战技巧精粹012:查找指定目录下的指定文件及Dir函数用法
  5. 使用log4j2免费分配日志记录
  6. 【渝粤教育】广东开放大学 文化田野调查 形成性考核 (22)
  7. 前端学习(2400):关于aixos的create方法
  8. 正则表达式匹配(动规)
  9. 同时面了腾讯三个部门,拿下offer!
  10. 查询SQLSERVER执行过的SQL记录
  11. 《剑指Offer》 数值的整数次方
  12. Android 四大组件学习之ContentProvider五
  13. FPGA的基本设计流程
  14. Axure统计图表设计(Excel设计统计图表、HighChart设计统计图表)
  15. luogu P3356 火星探险问题(网络流24题 拆点 + 最小费用流 + 路径输出)
  16. 软件测试工程师市场需求量是多少,带你探索软件测试工程师月薪是多少
  17. 哈氏合金C276钢带、C22带钢、254SMO薄带精密箔带需求增速
  18. 我来侃手机--连载二之四十岁的女人,风韵犹存
  19. 五种有效的学习方法 – 方法比努力重要
  20. 【冬瓜哥画PPT】最完整的存储系统接口/协议/连接方式总结

热门文章

  1. 业界资讯:adobe air 2.7 beta发布
  2. 测试一下你对IP地址的掌握水平(网管面试时会用到)
  3. 进程间通信之管道通信
  4. [ZJOI2010]贪吃的老鼠
  5. 2018年7月份,python上传自己的包库到pypi官网的方法
  6. 属性动画基础之ValueAnimator
  7. python-main
  8. 华为谷歌互利合作曝光:或将推Nexus手表
  9. WPF 正確理解ContentPresenter
  10. The credentials you provided during SQL Server 2008 install are invalid