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库就可以了

相关推荐
csbysj202013 分钟前
如何使用 XML Schema
开发语言
R6bandito_19 分钟前
STM32中printf的重定向详解
开发语言·经验分享·stm32·单片机·嵌入式硬件·mcu
earthzhang202126 分钟前
【1007】计算(a+b)×c的值
c语言·开发语言·数据结构·算法·青少年编程
江公望33 分钟前
Qt QtConcurrent使用入门浅解
c++·qt·qml
杨枝甘露小码33 分钟前
Python学习之基础篇
开发语言·python
武文斌771 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
爱吃喵的鲤鱼1 小时前
仿mudou——Connection模块(连接管理)
linux·运维·服务器·开发语言·网络·c++
爱吃小胖橘1 小时前
Unity网络开发--超文本传输协议Http(1)
开发语言·网络·网络协议·http·c#·游戏引擎
郝学胜-神的一滴2 小时前
使用Linux的read和write系统函数操作文件
linux·服务器·开发语言·数据库·c++·程序人生·软件工程
小火柴1232 小时前
利用R语言绘制直方图
开发语言·r语言