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 相关文章推荐
Python3基础之函数用法
Aug 13 Python
在Python下利用OpenCV来旋转图像的教程
Apr 16 Python
python 利用栈和队列模拟递归的过程
May 29 Python
pycharm: 恢复(reset) 误删文件的方法
Oct 22 Python
python调用百度地图WEB服务API获取地点对应坐标值
Jan 16 Python
使用Django搭建web服务器的例子(最最正确的方式)
Aug 29 Python
python中对_init_的理解及实例解析
Oct 11 Python
Python模块/包/库安装的六种方法及区别
Feb 24 Python
python为什么会环境变量设置不成功
Jun 23 Python
如何快速一次性卸载所有python包(第三方库)呢
Oct 20 Python
基于python实现监听Rabbitmq系统日志代码示例
Nov 28 Python
python爬虫中url管理器去重操作实例
Nov 30 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
thinkphp分页实现效果
2016/10/13 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
PHP设计模式之建造者模式(Builder)原理与用法案例详解
2019/12/12 PHP
Prototype RegExp对象 学习
2009/07/19 Javascript
jQuery UI 应用不同Theme的办法
2010/09/12 Javascript
jQuery学习笔记 操作jQuery对象 文档处理
2012/09/19 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
如何通过javascript操作web控件的自定义属性
2013/11/25 Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
2014/03/17 Javascript
ajax如何实现页面局部跳转与结果返回
2015/08/24 Javascript
AngularJs实现聊天列表实时刷新功能
2017/06/15 Javascript
细说webpack源码之compile流程-rules参数处理技巧(2)
2017/12/26 Javascript
微信小程序上传图片实例
2018/05/28 Javascript
利用jsonp解决js读取本地json跨域的问题
2018/12/11 Javascript
JavaScript简单实现动态改变HTML内容的方法示例
2018/12/25 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
2019/09/10 Javascript
jquery制作的移动端购物车效果完整示例
2020/02/24 jQuery
详解vue3中组件的非兼容变更
2021/03/03 Vue.js
[07:55]2014DOTA2 TI正赛第三日 VG上演推进荣耀DKEG告别
2014/07/21 DOTA
[07:48]DOTA2上海特级锦标赛主赛事首日RECAP
2016/03/04 DOTA
python链接Oracle数据库的方法
2015/06/28 Python
使用python实现个性化词云的方法
2017/06/16 Python
wxPython的安装与使用教程
2018/08/31 Python
在django admin详情表单显示中添加自定义控件的实现
2020/03/11 Python
使用python处理题库表格并转化为word形式的实现
2020/04/14 Python
详解利用python识别图片中的条码(pyzbar)及条码图片矫正和增强
2020/11/17 Python
Python创建文件夹与文件的快捷方法
2020/12/08 Python
Brother加拿大官网:打印机、贴标机、缝纫机
2019/10/09 全球购物
工商企业管理应届生求职信
2013/11/03 职场文书
2014年药店工作总结
2014/11/20 职场文书
地道战观后感400字
2015/06/04 职场文书
先进教师个人主要事迹材料
2015/11/03 职场文书
护士心得体会范文
2016/01/25 职场文书
apache基于端口创建虚拟主机的示例
2021/04/24 Servers
Golang Gob编码(gob包的使用详解)
2021/05/07 Golang
Spring Cloud OAuth2实现自定义token返回格式
2022/06/25 Java/Android