Qt中通过Qpixmap设置图片透明度
最近看到美图秀秀的一些功能,可以手动设置图片的透明度并显示在其它图片上,所以自己动手做了个小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设置图片透明度相关推荐
- Qt中的颜色设置——Qpalette,Qcolor,Qbrush等
Qt中的颜色设置--Qpalette,Qcolor,Qbrush等 一些知识简介 QPalete::Window--通常指窗口部件的背景色: QPalette:WindowText--通常指窗口不见的 ...
- OpenCV这么简单为啥不学——1.10、addWeighted设置图片透明度
OpenCV这么简单为啥不学--1.10.addWeighted设置图片透明度 目录 OpenCV这么简单为啥不学--1.10.addWeighted设置图片透明度 前言 cv2.addWeighte ...
- TextView显示html信息、在文本下面添加下划线、中划线、设置图片
1,在文本下面添加下划线 tv.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG); 2,在文本设置中划线并加清晰 tv.getPaint().setFlag ...
- html中body如何设置图片,如何调整body标记中的html背景图片的大小
我想在我的html中使用背景图片(bg.png),但我想调整图片的大小,所以它会始终填充整个页面.我这样做是这样的:如何调整body标记中的html背景图片的大小 .stretch { width:1 ...
- Qt中QLabel的背景图片设置问题
在Qt开发的过程中,经常会遇到设置Label的背景图片问题,通常可以有一下两种方法设置: 方法1:通过setScaleContents来设置(有时候会出现svg图片无法自适应label大小的问题) Q ...
- php设置图片透明度,wps中设置图片透明度在哪里?
方法:1.打开WPS,插入图片:2.点击"开始"中的"形状",选择与图片相同的矩形,盖住原图:3.双击图片,把"线条"的"颜色&q ...
- python设置图片透明度_学习python第40天
今天是在尚学堂学习python第40天今天学习了CSS 中常用样式总结,边框的风格,css中的定位,盒模型,css3中的选择器,css3中常用的属性 CSS 中常用样式总结 字体:(font) 字体的 ...
- indesign文字怎么绕排图片形状_indesign透明度怎么调整?indesign怎么设置图片透明度?...
indesign透明度调整教程: 1.打开Adobe InDesign. 2.通过从工作区顶部的"控制"面板中选择"文件">"打开", ...
- QT中如何文字变成图片
QSize size(200,200); //指定图片大小; QImage image(size,QImage::Format_ARGB32); //以ARGB32格式构造一个QImage //ima ...
- QT中的MessageBox设置自动关闭退出
一.概述 由于弹出的MessageBox需要手动操作,点击相关操作程序才会进一步执行,所以有时程序使用了MessageBox会阻塞相关功能代码执行.例如,在串口编程中,接收到数据或某项配置成功后弹出一 ...
最新文章
- 什么是AWS Lambda?
- CUDA入门(三) 初探线程与块
- poj 3660 Cow Contest
- JSP和Servlet面试题精选
- 《JAVA程序设计》_第四周学习总结
- VS2010中使用正则表达式替换时无法使用回车符的解决方法
- springboot使用JSR303对数据进行校验
- 【POJ3264】Balanced Lineup,线段树入门
- 作品拍卖价碾压毕加索,没有灵魂的 AI 灵魂画手有怎样的未来?
- LINUX使用OpenSSL进行签名
- 基于matlab和lingo的数学实验,MATLAB和LINGO软件在数学建模竞赛中的应用-精选教育文档...
- 企业应用快速跨向容器时代的正确姿势
- 在线聊天静态网页模板html Demo
- PCB正片和负片的个人理解
- Vue回炉重造之封装防刷新考试倒计时组件
- 淘宝API关键词搜索接口调用示例
- 分布式Ruby解决之道
- linux应用开发大杂烩(你不一定都知道的细枝末节)
- Udacity优达学城 TensorFlow笔记2-对服饰图像分类
- 洛谷 P2056 采花 - 莫队算法
热门文章
- 知识付费的痛点:如何让用户持续学习?
- html页面转excel文件,html格式文件转excel
- 循环结构——分数化简
- win10相机计算机无法使用,win10相机无法使用完美解决方法
- win10相机计算机无法使用,win10系统相机怎么用 win10系统相机无法使用怎么解决...
- 百度地图调用笔记:javascript版本2
- Visual Studio MFC编程 程序调试时所遇到的问题及解决方法
- 惠普电脑按F12锁屏如何解?
- 使用计算机VLOOKUP函数需注意什么,lookup和vlookup的区别 计算机Excel中的lo...
- 漫画:面试过程的神回复