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

相关推荐
微学AI1 小时前
一根针指向所有方向:挂谷猜想对 LLM Agent 技能-记忆架构的启示
开发语言·人工智能·架构·挂谷猜想
豆瓣鸡2 小时前
算法日记 - Day3
java·开发语言·算法
韭菜炒鸡肝天2 小时前
VTK开发笔记(一):VTK介绍,Qt..+VSx+VTK.编译
开发语言·笔记·qt
Aaron - Wistron3 小时前
Web API C# (Furion版)带 单元测试
开发语言·后端·c#
刀法孜然4 小时前
QT5.12.8开发中使用触摸屏,配置的环境变量,imx6ullpro开发板qt开发
qt
Dxy12393102164 小时前
Python项目打包成EXE完整教程(PyInstaller实战避坑)
开发语言·python
0566465 小时前
Python康复训练——常用标准库
开发语言·python·学习
骊城英雄5 小时前
基于C#+avalonia ui实现的跨平台点胶机灌胶监控控制上位机软件
开发语言·ui·c#
吾儿良辰5 小时前
一个被BCL遗忘的高性能集合:C# CircularBuffer<T>深度解析
开发语言·windows·c#
昆曲之源_娄江河畔5 小时前
Python如何安装flask, pymssql
开发语言·python·flask·pymssql