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

相关推荐
kakakahahahaha6 分钟前
Windows C盘临时文件清理:%temp%、Windows Temp、Prefetch、Windows.old与hiberfil.sys处理指南
c语言·开发语言·windows
朝朝辞暮i12 分钟前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
朝朝辞暮i44 分钟前
C++ 第 29 课:回调函数 Callback
开发语言·c++·算法
笨笨饿1 小时前
140_AI新手村MCP与Skills是干嘛的
开发语言·人工智能·python·stm32·单片机·嵌入式硬件·物联网
YOLO数据集集合1 小时前
EvoAgent:面向PR研发治理的自进化Multi-Agent Harness系统
java·开发语言·目标检测·agent·自进化
C++ 老炮儿的技术栈3 小时前
main函数之后的调用
c语言·c++·人工智能·qt·mfc·c
知识分享小能手4 小时前
C++ 学习教程,从入门到精通,C++ 友元、异常和其他特性 — 详细知识点(15)
开发语言·c++·学习
朝朝辞暮i4 小时前
C++ 第 26 课:对象、指针与 ->
java·开发语言·c++
2601_962885725 小时前
如何用 Python 做股价历史分位选股?(筛出处于历史低位的股票)
开发语言·python
殷色玫瑰5 小时前
C++入门基础复习:从命名空间到引用与nullptr,一篇重新捡回C++基础
java·开发语言·c++