pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法
作者:songofsin 发布时间:2023-03-22 16:52:56
标签:pyqt5,ui,列表,窗口,图片
1:listWidget 以滚动窗口显示文件下的所有文件:
self.listWidget = QtWidgets.QListWidget(self.gridLayoutWidget)
self.listWidget.setMaximumSize(QtCore.QSize(16777215, 400))
self.listWidget.setObjectName("listWidget")
以上代码都是以qtDesigner画出来自动生成的
self.listWidget.setVerticalScrollBarPolicy(QtCore.Qt.ScrollBarAlwaysOn#这里以滚动窗口显示)
self.pushButton_10.clicked.connect(TabWidget.viewList)#关联事件
def viewList(self):
for i in os.listdir("./photo"):
self.listWidget.addItem("./photo"+"/"+i)
2:点击列表里的item能够返回item名称并显示图片
self.listWidget.currentItemChanged.connect(TabWidget.image)#这是点击item会返回item的名称:ps我使用qtDesigner绘制的TabWidget。
def image():
print(self.listWidget.currentItem().text())
imagefile=self.listWidget.currentItem().text()
png = QtGui.QPixmap(imagefile).scaled(self.label.width(), self.label.height())
self.label.setPixmap(png)
#在lable上显示图片
3:在滚动窗口中显示文件中的所有图像
这部分先用qtDesigner 绘制了一块scrollArea, 使用scrollArea的好处是自动会生成滚动条
def suoluetu(self):
names=[]
positions = [(i, j) for i in range(4) for j in range(30)]
for i in os.listdir(r"./photo"):
names.append("./photo"+"/"+i)
self.filewidget = QWidget()
self.filewidget.setMinimumSize(350, 1800)
for position, names in zip(positions, names):
lab = QLabel(self.filewidget)
lab.setFixedSize(100,150)
pix=QtGui.QPixmap(names)
lab.setPixmap(pix)
lab.move(100*position[0]+50,150*position[1]+70)#这部分是我自己瞎写的
self.scrollArea.setWidget(self.filewidget)
一开始采用的gridLayout显示的图片效果也还不错,但是不能滚动画面
后来采用这种方法
很遗憾窗口中的图片不能点击,就不能对相应的图片进行分析
所以我觉得还是应该采用listWidget的方式显示图片
来源:https://blog.csdn.net/songofsin/article/details/80919574


猜你喜欢
- JWT介绍Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准.该token被设计为
- 本文讲述了python安装mysql-python的方法。分享给大家供大家参考,具体如下:ubuntu 系统下进行的操作首先安装了pip工具
- 本文实例为大家分享了python opencv进行图像拼接的具体代码,供大家参考,具体内容如下思路和方法思路1、提取要拼接的两张图片的特征点
- 1 conda介绍conda是一个python的包管理器,用来管理、安装、更新python的包和相关的依赖。另外,conda可以为特定任务创
- 我写过一个外部模块扩展,现在开始看PHP源码中的mysql扩展,它是可以被集成到PHP内部的,所以应该算是内置的扩展了。 该扩展需要用到my
- 一个线上问题的引发的思考 今天上班的时候,开发的同事拿过来一个.zip的压缩包文件,说是要把里面的数据
- 元组的结构在这一小节当中主要介绍在 python 当中元组的数据结构:typedef struct { PyObj
- 从python2到python3,这两个版本可以说是从语法、编码等多个方面上都有很大的差别。为了不带入过多的累赘,Python 3.0在设计
- 一张表(ColumnTable)的结构如下图所示当前需要实现的功能:通过Number的值为67来获取当前的节点ID、父节点ID递归实现SQL
- 第一种方式阿里云、百度云服务器可用!!!yum install python3第二种方式1.下载python3.6.5的压缩包wget ht
- <?php /* *文件名:linearList.php * 功能:数据结构线性表的顺序存储实现 * author:黎锦焕 * @co
- 本文介绍一个用python结合xlsxwriter自动生成业务报表的程序。这里的业务数据采用的是指定的值,真实情况下需要其他程序来接入数据。
- 本文实例讲述了Python实现的KMeans聚类算法。分享给大家供大家参考,具体如下:菜鸟一枚,编程初学者,最近想使用Python3实现几个
- 提示:以下操作均在root权限下进行。# 查看有没有安装MySQL:dpkg -l | grep mysql# 安装MySQL:apt in
- * 上有个有意思的话题叫细胞自动机:https://en.wikipedia.org/wiki/Cellular_automaton在2
- 利用函数:group_concat(),实现一个ID对应多个名称时,原本为多行数据,把名称合并成一行。 其完整语法: GROUP_CONCA
- 数据增强卷积神经网络非常容易出现过拟合的问题,而数据增强的方法是对抗过拟合问题的一个重要方法。2012 年 AlexNet 在 ImageN
- 使用torchvision库的datasets类加载常用的数据集或自定义数据集图像识别是计算机视觉中的一个基础任务,它的目标是让计算机能够识
- 创建随机数 ①自JavaScript产生后,好多浏览器中都有内置的随机数发生方法。例如: var number = Math.random(
- 1.go已经提供了锁,为什么还需要atomic原子操作?1.加锁代价比较高,耗时多,需要上下文切换。加锁解锁在代码层实现,而代码是运行在用户