zoukankan      html  css  js  c++  java
  • Qt 图形特效(Graphics Effect)介绍

    原文链接: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: 
    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.

  • 相关阅读:
    JSTL日期格式化用法
    JSTL详解1
    Mybatis插入后返回主键
    JSTL详解2
    jsp与jsp之间传参数如何获取
    [转] J2EE面试题集锦(附答案)
    [转] 修炼一名程序员的职业水准(林庆忠原创)
    [转] 应聘Java笔试时可能出现问题及其答案(第三部分)
    [转] 与大家一起分享JAVA源代码查询网站
    [转] 应聘Java笔试时可能出现问题及其答案(第四部分)
  • 原文地址:https://www.cnblogs.com/lvdongjie/p/4366086.html
Copyright © 2011-2022 走看看