转http://blog.sina.com.cn/s/blog_5c70dfc80100r257.html

在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图片显示

    1.图片截取指定大小 void Setting_TabProduct::changeImageSize(int width,int height,QString imgFile) { QPixmap ...

  2. 初识Qt图片显示、平移及旋转

    1.新建一个Qt Gui应用,项目名称为myPicture,基类选择为QMainWindow,类名设置为MainWindow. 2.在mainwindow.h头文件中添加void paintEvent ...

  3. QT中显示GIF图片

    在QT中要显示GIF图片,不能通过单单的添加部件来完成. 还需要手动的编写程序. 工具:QT Creator 新建一个工程,我们先在designer中,添加一个QLabel部件. 如下图: 将QLab ...

  4. Qt添加窗口背景图片、Label图片显示、、Label文字显示

    一.添加窗口背景图片 重写MainWindow绘制事件 void MainWindow::paintEvent(QPaintEvent *event) { QPainter painter(this) ...

  5. OpenCV【2】---读取png图片显示到QT label上的问题

    问题一:   操作图片test.png是一个365x365的PNG图片   通过OpenCV自带的GUI显示出来图像是没问题的,例如以下操作代码所看到的: QStringfileName=QFileD ...

  6. QT开发实战一:图片显示

    测试平台 宿主机平台:Ubuntu 12.04.4 LTS 目标机:Easy-ARM IMX283 目标机内核:Linux 2.6.35.3 QT版本:Qt-4.7.3 Tslib版本:tslib-1 ...

  7. qt用于图片显示的窗口

     用于图片显示的窗口 国产化  

  8. Qt之显示网络图片

    简述 Qt中包含了网络模块-network,我们可以很容易的进行各种网络编程和数据传输,关于network的类很多,其中包含:支持DNS.HTTP.TCP/UDP等众多高级类,可以参考助手. 下面我们 ...

  9. QT中显示动画

    在QT中要显示GIF图片,不能通过单单的添加部件来完成.还需要手动的编写程序.工具:QT Creator新建一个工程,我们先在designer中,添加一个QLabel部件. 将QLabel拉成适当大小 ...

随机推荐

  1. ios inHouse 公布应用

    一.明白几个概念 1.企业版IDP: 即iOS Development Enterprise Program.注意是$299/Year那种.并非$99/Year的那种 2.In House:是指企业内 ...

  2. 将其它图片格式转为.eps格式

    假设是用origin的话就不存在这个问题. 倘若你是用excel绘图的话. 1.先将excel导出为.pdf文件 2.用Adobe Acrobat Pro 打开pdf,用其它的pdf软件貌似不行 3. ...

  3. ListView上拉刷新和分页加载完整的Dome

    很多人工作的过程中都会碰到ListView下拉刷新和分页加载,然后大多数公司都已经把框架写好了,大家直接用就可以了,有些人一直对这个事情处于迷茫状态,为了让大家对上拉刷新和分页加载有一个比较全面的认识 ...

  4. HDU 1069 monkey an banana DP LIS

    Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64uDescription 一组研究人员正在 ...

  5. postgresql文档生成注意事项

    如果要生成中文版的postgresql,目前我所知道的方法见我的一篇博客http://www.cnblogs.com/codeblock/p/4812445.html 里面有详细的介绍,但是生成的文档 ...

  6. UVa401 Palindromes

    #include <stdio.h>#include <string.h> char mirror(char c){    static const char m[] = &q ...

  7. java.lang.NoClassDefFoundError: org.ksoap2.transport.HttpTransportSE异常处理

    原因就是没有打包进去  因为引用进去 编译时没出出现问题 解决如下

  8. 使用apache benchmark(ab) 测试报错汇总

    1.socket: Too many open files (24) 解决方法: [root@zabbix ~]# ulimit -a core file size (blocks, -c) 0 da ...

  9. javascript复制

    1.实现点击按钮,复制文本框中的的内容 1 <scrip type="text/javascript"> 2 function copyUrl2() 3 { 4 var ...

  10. VirtualBox虚拟机安装RedHat7.3编译Linux0.01内核

    引子 由于需要编译linux0.01内核,而目前的linux版本太高需要降低gcc版本等等,需要做不少调整非常不方便. 所以,直接安装RedHat7.3,这样就好编译linux0.01的内核了. 但是 ...