pyqt5 QlistView列表显示的实现示例


Posted in Python onMarch 24, 2020

1、简介

QlistView类用于展示数据,它的子类是QListWIdget。QListView是基于模型(Model)的,需要程序来建立模型,然后再保存数据

QListWidget是一个升级版本的QListView,它已经建立了一个数据储存模型(QListWidgetItem),直接调用addItem()函数,就可以添加条目(Item)

QListView类中常用的方法如表

方法 描述
setModel() 用来设置View所关联的Model,可以使用Python原生的list作为数据源Model
selectedItem() 选中Model的条目
isSelected() 判断Model中的某条目是否被选中

QListView的常用信号

信号 含义
clicked 当单击某项时,信号被发射
doubleClicked 当双击某项时,信号被发射

pyqt5 QlistView列表显示的实现示例

2、功能实现

# -*- coding: utf-8 -*-

'''
  【简介】
	PyQt5中 QListView 例子    
 
'''

from PyQt5.QtWidgets import QApplication, QWidget , QVBoxLayout , QListView, QMessageBox
from PyQt5.QtCore import QStringListModel 
import sys 

class ListViewDemo(QWidget):
	def __init__(self, parent=None):
		super(ListViewDemo, self).__init__(parent)
		self.setWindowTitle("QListView 例子")
		self.resize(300, 270)  
		layout = QVBoxLayout()
		
		listView = QListView()   #创建一个listview对象
		slm = QStringListModel(); #创建mode
		self.qList = ['Item 1','Item 2','Item 3','Item 4' ]	 #添加的数组数据
		slm.setStringList(self.qList) #将数据设置到model
		listView.setModel(slm )##绑定 listView 和 model
		listView.clicked.connect(self.clickedlist)		 #listview 的点击事件
		layout.addWidget( listView )#将list view添加到layout
		self.setLayout(layout) 		 #将lay 添加到窗口

	def clickedlist(self, qModelIndex):
		QMessageBox.information(self, "QListView", "你选择了: "+ self.qList[qModelIndex.row()])
		print("点击的是:" + str(qModelIndex.row()))
		
if __name__ == "__main__":    
	app = QApplication(sys.argv)
	win = ListViewDemo()	
	win.show()	
	sys.exit(app.exec_())

文件参考:PyQt 快速开发与实践

到此这篇关于pyqt5 QlistView列表显示的实现示例的文章就介绍到这了,更多相关pyqt5 QlistView列表显示内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
分析在Python中何种情况下需要使用断言
Apr 01 Python
Python解析nginx日志文件
May 11 Python
Python 读写文件和file对象的方法(推荐)
Sep 12 Python
详解Python3中字符串中的数字提取方法
Jan 14 Python
Django网络框架之创建虚拟开发环境操作示例
Jun 06 Python
opencv-python 提取sift特征并匹配的实例
Dec 09 Python
python Qt5实现窗体跟踪鼠标移动
Dec 13 Python
pytorch中torch.max和Tensor.view函数用法详解
Jan 03 Python
Python 支持向量机分类器的实现
Jan 15 Python
Python爬取微信小程序Charles实现过程图解
Sep 29 Python
python与idea的集成的实现
Nov 20 Python
pycharm配置QtDesigner的超详细方法
Jan 25 Python
Python多线程操作之互斥锁、递归锁、信号量、事件实例详解
Mar 24 #Python
PyQt5中向单元格添加控件的方法示例
Mar 24 #Python
Python多线程Threading、子线程与守护线程实例详解
Mar 24 #Python
PYQT5 vscode联合操作qtdesigner的方法
Mar 24 #Python
ubuntu 安装pyqt5和卸载pyQt5的方法
Mar 24 #Python
Python socket连接中的粘包、精确传输问题实例分析
Mar 24 #Python
Pyqt5 关于流式布局和滚动条的综合使用示例代码
Mar 24 #Python
You might like
php数组函数序列之array_search()- 按元素值返回键名
2011/11/04 PHP
php实现window平台的checkdnsrr函数
2015/05/27 PHP
Linux下编译redis和phpredis的方法
2016/04/07 PHP
PHP微信PC二维码登陆的实现思路
2017/07/13 PHP
总结PHP代码规范、流程规范、git规范
2018/06/18 PHP
php设计模式之观察者模式定义与用法经典示例
2019/09/19 PHP
JAVASCRIPT 对象的创建与使用
2021/03/09 Javascript
验证用户是否修改过页面的数据的实现方法
2008/09/26 Javascript
DWZ刷新dialog解决方法
2013/03/03 Javascript
jQuery父级以及同级元素查找介绍
2013/09/04 Javascript
javascript 实现map集合
2015/04/03 Javascript
兼容各大浏览器的JavaScript阻止事件冒泡代码
2015/07/09 Javascript
JS实现弹出浮动窗口(支持鼠标拖动和关闭)实例详解
2015/08/06 Javascript
jQuery动态星级评分效果实现方法
2015/08/06 Javascript
jquery可定制的在线UEditor编辑器
2015/11/17 Javascript
Node.js中npm常用命令大全
2016/06/09 Javascript
JS图片延迟加载插件LazyImgv1.0用法分析【附demo源码下载】
2017/09/04 Javascript
vue项目在线上服务器访问失败原因分析
2020/08/14 Javascript
python3编写C/S网络程序实例教程
2014/08/25 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
JSONLINT:python的json数据验证库实例解析
2017/11/28 Python
python数据化运营的重要意义
2019/11/25 Python
Web前端页面跳转并取到值
2017/04/24 HTML / CSS
浅析HTML5中的download属性使用
2019/03/13 HTML / CSS
英国豪华真皮和布艺沙发销售网站:Darlings of Chelsea
2018/01/05 全球购物
娱乐地球:Entertainment Earth
2020/01/08 全球购物
简述进程的启动、终止的方式以及如何进行进程的查看
2014/02/20 面试题
求职简历中个人的自我评价
2013/12/25 职场文书
见义勇为事迹材料
2014/12/24 职场文书
热血教师观后感
2015/06/10 职场文书
宝葫芦的秘密观后感
2015/06/11 职场文书
水浒传读书笔记
2015/06/25 职场文书
田径运动会广播稿
2015/08/19 职场文书
九年级历史教学反思
2016/02/19 职场文书
2016年党员公开承诺书范文
2016/03/24 职场文书
Linux、ubuntu系统下查看显卡型号、显卡信息详解
2022/04/07 Servers