Qt 显示图片

Qt显示图片我所知道的有三种方式:

1.QLabel显示图片

使用手动添加的ui控件QLabel显示图片。这种方式把图片显示出来,放大缩小等操作并不是很方便。(对不起,我错了,我太年轻了,这种也是可以进行很多操作的)

cpp 复制代码
QImage *image = new QImage;
image->load(图片路径);//QString类型的路径
ui->label_2->setPixmap(QPixmap::fromImage(image).scaled(ui->label_2->size()));

2.QGraphicsView显示图片

我们先看一下官方的解释:

QGraphicsScene类提供了一个用于管理大量2D图形项目的界面。该类充当QGraphicsltems的容器。它与QGraphicsView一起用于在2D表面上可视化图形项。QGraphicsScene是图形视图框架的一部分QGraphicsScene还提供了一些功能,可以让您高效地确定项目的位置,以及确定在场景的任意区域中哪些项目是可见的。使用QGraphicsView小部件,您可以可视化整个场景。

请注意,QGraphicsScene本身没有可视外观;它只管理项目。您需要创建QGraphicsView小部件来可视化场景。

直接用代码来解释吧:

首先我们得创建一个QGraphicsScene用来存储要显示的东西的,它是一个容器。然后我们往容器里面添加要显示的东西,也就是图片(fileName代表的是图片路径)。之后我们将这个容器借助QGraphicsView显示出来。请注意,QGraphicsScene本身没有可视外观;它只管理项目。您需要创建QGraphicsView小部件来可视化场景。最后播放QGraphicsView。

cpp 复制代码
//创建显示容器
QGraphicsScene *scene = new QGraphicsScene;
//向容器中添加文件路径为fileName(QString类型)的文件
scene->addPixmap(QPixmap(fileName));
//借助graphicsView(QGraphicsView类)控件显示容器的内容
ui->graphicsView->setScene(scene);
//开始显示
ui->graphicsView->show();
/*-----------------------------以下为注释-------------------------------*/
/*
ui->graphicsView这个是显示图片的控件,可以手动创建,也可以在ui界面创建,手动创建如下
QGraphicsView *控件名 = new QGraphicsView( 需要显示的容器名,this );
QGraphicsScene *scene;
QGraphicsView *view = new QGraphicsView( scene,this );
scene->addPixmap(QPixmap(文件路径) );
view->show();
原文地址:https://zhidao.baidu.com/question/105949720.html
*/

3.opencv显示图片

opencv显示就真的只是简简单单的显示图片了,好像显示之后并不能干什么事情

cpp 复制代码
cv::Mat inputImage = cv::imread(图片路径);
//显示图片
cv::imshow("Display Image",inputImage);

需要引入opencv库文件,有vs的Qt引入就只需要加入库文件,lib库就可以了

相关推荐
IT 古月方源32 分钟前
ensp 关于ARRP 的讲解 配置
运维·开发语言·网络·tcp/ip·智能路由器
西猫雷婶37 分钟前
python学opencv|读取图像(二十二)使用cv2.polylines()绘制多边形
开发语言·python·opencv
温轻舟40 分钟前
前端开发 -- 自定义鼠标指针样式
开发语言·前端·javascript·css·html·温轻舟
xiaocaibao7771 小时前
编程语言的软件工程
开发语言·后端·golang
Ocean☾1 小时前
C语言-基因序列转换独热码(one-hot code)
c语言·开发语言
2401_858286111 小时前
117.【C语言】数据结构之排序(选择排序)
c语言·开发语言·数据结构·笔记·算法·排序算法
捕鲸叉1 小时前
C++软件设计模式之类型模式和对象型模式
开发语言·c++·设计模式
魔道不误砍柴功1 小时前
Java 中反射的高级用法:窥探 Java 世界的魔法之门
java·开发语言·python
2401_857617621 小时前
“无缝购物体验”:跨平台网上购物商城的设计与实现
java·开发语言·前端·安全·架构·php
觅远1 小时前
python+reportlab创建PDF文件
开发语言·python·pdf