pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法


Posted in Python onJune 20, 2019

1:listWidget 以滚动窗口显示文件下的所有文件:

pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法

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名称并显示图片

pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法

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:在滚动窗口中显示文件中的所有图像

pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法

这部分先用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的方式显示图片

以上这篇pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python datetime时间格式化去掉前导0
Jul 31 Python
Python采用Django制作简易的知乎日报API
Aug 03 Python
Python爬虫获取整个站点中的所有外部链接代码示例
Dec 26 Python
Python wxpython模块响应鼠标拖动事件操作示例
Aug 23 Python
Python 多维List创建的问题小结
Jan 18 Python
python pandas写入excel文件的方法示例
Jun 25 Python
解决Pytorch 训练与测试时爆显存(out of memory)的问题
Aug 20 Python
Matlab中plot基本用法的具体使用
Jul 17 Python
python之语音识别speech模块
Sep 09 Python
python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法
Nov 05 Python
Python何绘制带有背景色块的折线图
Apr 23 Python
利用Python实现翻译HTML中的文本字符串
Jun 21 Python
PyQt5 窗口切换与自定义对话框的实例
Jun 20 #Python
PyQt5笔记之弹出窗口大全
Jun 20 #Python
PyQt5创建一个新窗口的实例
Jun 20 #Python
pyQT5 实现窗体之间传值的示例
Jun 20 #Python
python3.6环境安装+pip环境配置教程图文详解
Jun 20 #Python
Python 3.6 -win64环境安装PIL模块的教程
Jun 20 #Python
详解Python 调用C# dll库最简方法
Jun 20 #Python
You might like
php中stdClass的用法分析
2015/02/27 PHP
PHP实现的mysql操作类【MySQL与MySQLi方式】
2017/10/07 PHP
PHP字符串中抽取子串操作实例分析
2019/06/22 PHP
JQuery.uploadify 上传文件插件的使用详解 for ASP.NET
2010/01/22 Javascript
浏览器打开层自动缓慢展开收缩实例代码
2013/07/04 Javascript
JS实现字体选色板实例代码
2013/11/20 Javascript
使用 js+正则表达式为关键词添加链接
2014/11/11 Javascript
node.js中的定时器nextTick()和setImmediate()区别分析
2014/11/26 Javascript
JS生成一维码(条形码)功能示例
2017/01/19 Javascript
Javascript中的prototype与继承
2017/02/06 Javascript
JavaScript实现带有子菜单和控件的slider轮播图效果
2017/11/01 Javascript
node中的cookie的具体使用
2018/09/13 Javascript
Vue实现附件上传功能
2020/05/28 Javascript
Python脚本实时处理log文件的方法
2016/11/21 Python
python实现飞机大战
2018/09/11 Python
Python实现多线程/多进程的TCP服务器
2019/09/03 Python
Python 如何批量更新已安装的库
2020/05/26 Python
Python urlopen()参数代码示例解析
2020/12/10 Python
CSS3感应鼠标的背景闪烁和图片缩放动画效果
2014/05/14 HTML / CSS
html5中地理位置定位api接口开发应用小结
2013/01/04 HTML / CSS
HTML5新特性之type=file文件上传功能
2018/02/02 HTML / CSS
海外淘书首选:AbeBooks
2017/07/31 全球购物
世界排名第一的运动鞋市场:Flight Club
2020/01/03 全球购物
NHL官方在线商店:Shop.NHL.com
2020/05/01 全球购物
Linux机考试题
2015/10/16 面试题
《罗布泊,消逝的仙湖》教学反思
2014/03/01 职场文书
普通话演讲稿
2014/09/03 职场文书
公司租房协议书
2014/10/14 职场文书
2014大学辅导员工作总结
2014/12/02 职场文书
在校学生证明格式
2015/06/24 职场文书
机械生产实习心得体会
2016/01/22 职场文书
css实现文章分割线样式的多种方法总结
2021/04/21 HTML / CSS
Spring boot应用启动后首次访问很慢的解决方案
2021/06/23 Java/Android
springboot拦截器无法注入redisTemplate的解决方法
2021/06/27 Java/Android
mysql定时自动备份数据库的方法步骤
2021/07/07 MySQL
Python实现PIL图像处理库绘制国际象棋棋盘
2021/07/16 Python