博客转载自:https://blog.csdn.net/lg1259156776/article/details/52325361

在Qt中处理图片一般都要用到QImage类,但是QImage的对象不能够直接显示出来,要想能看到图片,初步发现有两种方法。

一、QImage转QPixmap,然后用QLabel::setPixmap()

image=new QImage("D:/Temp/XX.jpg");

pixmap=newQPixmap();
pixmap->convertFromImage(*image);
label=newQLabel(this);
label->setGeometry(100,0,1000,700);
label->setPixmap(*pixmap);
二、在paintEvent()中直接画
void MyWindow::paintEvent(QPaintEvent*)
{
QPainter paint(this);
paint.drawImage(0,0,*image);
}
有两种方法,就有比较。经过试验发现,第一种方法效率更高,虽然代码开起来多了,但是经过优化用于显示的QPixmap能够体现出其优势。同样显示一幅1200*1600的图片,第一种方法几乎不需要时间,用毫秒计时显示为0,而第二种方法需要15ms,在需要大量运算的地方,15ms的差距区别可是相当大的。
												

Qt中显示图像的两种方法的更多相关文章

  1. 【Qt开发】Qt中显示图像的两种方法对比

    在Qt中处理图片一般都要用到QImage类,但是QImage的对象不能够直接显示出来,要想能看到图片,初步发现有两种方法. 一.QImage转QPixmap,然后用QLabel::setPixmap( ...

  2. Redis中持久化的两种方法详解

    Redis提供了两种不同的持久化方法来将数据存储到硬盘里面.一种方法叫快照(snapshotting),它可以将存在于某一时刻的所有数据都写入硬盘里;另一种方法教只追加文件(append-only f ...

  3. 使用JavaScript获取URL中的参数(两种方法)

    本文给大家分享两种方法使用js获取url中的参数,其中方法二是使用的正则表达式方法,大家可以根据需要选择比较好的方法,废话不多说了,直接看详细介绍吧. 方法一: //取url参数 var type = ...

  4. Java代码中获取配置文件(config.properties)中内容的两种方法

    方法千千万,本人暂时只总结了两种方法. (1)config.properties中的内容如图 在applicationContext.xml中配置 <!-- 引入配置文件 --> < ...

  5. qt 自动重启(两种方法)

    所谓自动重启就是程序自动关闭后在重新打开: 一般一个qt程序main函数如下: int main(int argc, char* argv[]) { QApplication app(argc, ar ...

  6. Java中随机数生成的两种方法,以及math的floor

    1.Math的random方法,调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选 ...

  7. Qt插件开发入门(两种方法:High-Level API接口,Low-Level API接口)

    Qt中为我们提供了两种开发插件的方式.一种是使用High-Level API接口,一种是使用Low-Level API接口.所谓High-Level API 是指通过继承Qt为我们提供的特定的插件基类 ...

  8. Qt产生随机数(两种方法)

    第一种方法 #include <QTime> QTime time; time= QTime::currentTime(); qsrand(time.msec()+time.second( ...

  9. Qt With Web(两种方法: WebAssembly,WebGL)

    Qt 写的程序,可以通过某些方式,在 web 上浏览 https://www.youtube.com/watch?v=OJ1ieyuIQzE​www.youtube.comhttps://www.yo ...

随机推荐

  1. nginx安装目录

    1.rpm -ql nginx看看通过yum安装到哪里了 2./etc/logrotate.d/nginx    配置 nginx日志轮转 用于logrotate服务的日志切割 3./etc/ngin ...

  2. JDBC进行处理大文件和批处理

    package cn.itcast.demo4; import java.io.FileInputStream; import java.io.FileOutputStream; import jav ...

  3. nyoj-952-最大四边形 (向量叉乘)

    题目链接 /* Name:nyoj-952-最大四边形 Copyright: Author: Date: 2018/4/27 10:46:24 Description: 枚举一条对角线,再选择一个 看 ...

  4. CodeForces - 891C: Envy(可撤销的并查集&最小生成树)

    For a connected undirected weighted graph G, MST (minimum spanning tree) is a subgraph of G that con ...

  5. 使用window.print()后,未关闭打印页面,原网页不能操作

    使用window.print()后,未关闭打印页面,原网页不能操作,此时可以试着用window.location.reload()重新加载页面解决问题.

  6. PCBA 生产需要什么文件? (2018-07-10)

    PCBA 生产需要什么文件? 生产需要资料 工单套料单 生产说明文件 生产贴片图 正面含元件号 背面含元件号 钢网资料(可以是 Gerber) 元件坐标图

  7. SQL Sever 学习系列之二

    SQL Sever 学习系列之二 SQL Server 学习系列之一(薪酬方案+基础) 四.有关时间输出问题      select GETDATE() 日期时间    ----显示为:2013-07 ...

  8. VirtualBox为虚拟OS硬盘扩容

    1.关闭虚拟OS. 2.进入到在VirtualBox的安装路径,执行命令例子如: VBoxManage.exe modifyhd F:\VM\Debian7.2.vdi --resize 40000 ...

  9. mongo之map-reduce笔记

    package com.sy.demo; import com.mongodb.MongoClient; import com.mongodb.client.FindIterable; import ...

  10. Windows Server 2008 R2换SID要注意

    今天刚装Windows2008R2,准备做实验.同样,我对虚拟机采用了母盘和差异磁盘.在新建好的虚拟机上使用NewSID执行更新SID操作时,一切正常,但当更新完并重启进入系统后,竟然蓝屏了.   原 ...