最近看到美图秀秀的一些功能,可以手动设置图片的透明度并显示在其它图片上,所以自己动手做了个小Demo,实际效果如下:

(图片仅供参考使用)

可以看到拖动下方进度条,可以控制左上角图片的透明度。

方法如下:

新建一个Qt项目,在UI界面上拖放一个QLabel和一个QSlider,设置QSlider的数值范围为0~255,简单布局下即可。

代码如下:

#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include <QPixmap>
#include <QPainter>
#include <QLabel>namespace Ui {
class Widget;
}class Widget : public QWidget
{Q_OBJECTpublic:explicit Widget(QWidget *parent = 0);~Widget();private slots:void on_horizontalSlider_sliderMoved(int position);private:Ui::Widget *ui;QLabel *m_label;    //设置透明度的图片的label
};#endif // WIDGET_H
#include "widget.h"
#include "ui_widget.h"#include <QDebug>
Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);//设置背景label的图片QPixmap pix_("./test.jpg");ui->label->setPixmap(pix_);//设置新的lable位置m_label = new QLabel(ui->label);m_label->setScaledContents(true);m_label->setGeometry(10,10,200,150);m_label->raise();m_label->show();
}Widget::~Widget()
{delete ui;
}void Widget::on_horizontalSlider_sliderMoved(int position)
{//设置新的图片的透明度QPixmap pix1_("./test.jpg");QPixmap temp(pix1_.size());temp.fill(Qt::transparent);QPainter p1(&temp);p1.setCompositionMode(QPainter::CompositionMode_Source);p1.drawPixmap(0, 0, pix1_);p1.setCompositionMode(QPainter::CompositionMode_DestinationIn);//根据QColor中第四个参数设置透明度,此处position的取值范围是0~255p1.fillRect(temp.rect(), QColor(0, 0, 0, position));p1.end();pix1_ = temp;m_label->setPixmap(pix1_);
}
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0"><class>Widget</class><widget class="QWidget" name="Widget"><property name="geometry"><rect><x>0</x><y>0</y><width>400</width><height>300</height></rect></property><property name="windowTitle"><string>Widget</string></property><layout class="QGridLayout" name="gridLayout"><item row="0" column="0"><layout class="QVBoxLayout" name="verticalLayout"><item><widget class="QLabel" name="label"><property name="text"><string/></property></widget></item><item><widget class="QSlider" name="horizontalSlider"><property name="maximum"><number>255</number></property><property name="orientation"><enum>Qt::Horizontal</enum></property></widget></item></layout></item></layout></widget><layoutdefault spacing="6" margin="11"/><resources/><connections/>
</ui>

参考

https://www.cnblogs.com/yanhuiw/p/3928868.html

结尾

只为记录,只为分享! 愿所写能对你有所帮助。不忘记点个赞,谢谢~

Qt中通过Qpixmap设置图片透明度相关推荐

  1. Qt中的颜色设置——Qpalette,Qcolor,Qbrush等

    Qt中的颜色设置--Qpalette,Qcolor,Qbrush等 一些知识简介 QPalete::Window--通常指窗口部件的背景色: QPalette:WindowText--通常指窗口不见的 ...

  2. OpenCV这么简单为啥不学——1.10、addWeighted设置图片透明度

    OpenCV这么简单为啥不学--1.10.addWeighted设置图片透明度 目录 OpenCV这么简单为啥不学--1.10.addWeighted设置图片透明度 前言 cv2.addWeighte ...

  3. TextView显示html信息、在文本下面添加下划线、中划线、设置图片

    1,在文本下面添加下划线 tv.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG); 2,在文本设置中划线并加清晰 tv.getPaint().setFlag ...

  4. html中body如何设置图片,如何调整body标记中的html背景图片的大小

    我想在我的html中使用背景图片(bg.png),但我想调整图片的大小,所以它会始终填充整个页面.我这样做是这样的:如何调整body标记中的html背景图片的大小 .stretch { width:1 ...

  5. Qt中QLabel的背景图片设置问题

    在Qt开发的过程中,经常会遇到设置Label的背景图片问题,通常可以有一下两种方法设置: 方法1:通过setScaleContents来设置(有时候会出现svg图片无法自适应label大小的问题) Q ...

  6. php设置图片透明度,wps中设置图片透明度在哪里?

    方法:1.打开WPS,插入图片:2.点击"开始"中的"形状",选择与图片相同的矩形,盖住原图:3.双击图片,把"线条"的"颜色&q ...

  7. python设置图片透明度_学习python第40天

    今天是在尚学堂学习python第40天今天学习了CSS 中常用样式总结,边框的风格,css中的定位,盒模型,css3中的选择器,css3中常用的属性 CSS 中常用样式总结 字体:(font) 字体的 ...

  8. indesign文字怎么绕排图片形状_indesign透明度怎么调整?indesign怎么设置图片透明度?...

    indesign透明度调整教程: 1.打开Adobe InDesign. 2.通过从工作区顶部的"控制"面板中选择"文件">"打开", ...

  9. QT中如何文字变成图片

    QSize size(200,200); //指定图片大小; QImage image(size,QImage::Format_ARGB32); //以ARGB32格式构造一个QImage //ima ...

  10. QT中的MessageBox设置自动关闭退出

    一.概述 由于弹出的MessageBox需要手动操作,点击相关操作程序才会进一步执行,所以有时程序使用了MessageBox会阻塞相关功能代码执行.例如,在串口编程中,接收到数据或某项配置成功后弹出一 ...

最新文章

  1. 什么是AWS Lambda?
  2. CUDA入门(三) 初探线程与块
  3. poj 3660 Cow Contest
  4. JSP和Servlet面试题精选
  5. 《JAVA程序设计》_第四周学习总结
  6. VS2010中使用正则表达式替换时无法使用回车符的解决方法
  7. springboot使用JSR303对数据进行校验
  8. 【POJ3264】Balanced Lineup,线段树入门
  9. 作品拍卖价碾压毕加索,没有灵魂的 AI 灵魂画手有怎样的未来?
  10. LINUX使用OpenSSL进行签名
  11. 基于matlab和lingo的数学实验,MATLAB和LINGO软件在数学建模竞赛中的应用-精选教育文档...
  12. 企业应用快速跨向容器时代的正确姿势
  13. 在线聊天静态网页模板html Demo
  14. PCB正片和负片的个人理解
  15. Vue回炉重造之封装防刷新考试倒计时组件
  16. 淘宝API关键词搜索接口调用示例
  17. 分布式Ruby解决之道
  18. linux应用开发大杂烩(你不一定都知道的细枝末节)
  19. Udacity优达学城 TensorFlow笔记2-对服饰图像分类
  20. 洛谷 P2056 采花 - 莫队算法

热门文章

  1. 知识付费的痛点:如何让用户持续学习?
  2. html页面转excel文件,html格式文件转excel
  3. 循环结构——分数化简
  4. win10相机计算机无法使用,win10相机无法使用完美解决方法
  5. win10相机计算机无法使用,win10系统相机怎么用 win10系统相机无法使用怎么解决...
  6. 百度地图调用笔记:javascript版本2
  7. Visual Studio MFC编程 程序调试时所遇到的问题及解决方法
  8. 惠普电脑按F12锁屏如何解?
  9. 使用计算机VLOOKUP函数需注意什么,lookup和vlookup的区别 计算机Excel中的lo...
  10. 漫画:面试过程的神回复