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批量修改文件后缀示例代码分享
Dec 24 Python
Python中捕捉详细异常信息的代码示例
Sep 18 Python
Python yield 使用浅析
May 28 Python
python matplotlib中文显示参数设置解析
Dec 15 Python
Python学习笔记之open()函数打开文件路径报错问题
Apr 28 Python
Python3匿名函数用法示例
Jul 25 Python
python 多线程中子线程和主线程相互通信方法
Nov 09 Python
python退出命令是什么?详解python退出方法
Dec 10 Python
python+opencv实现高斯平滑滤波
Jul 21 Python
python中id函数运行方式
Jul 03 Python
python爬虫使用正则爬取网站的实现
Aug 03 Python
python中print格式化输出的问题
Apr 16 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
文章推荐系统(二)
2006/10/09 PHP
ADODB的数据库封包程序库
2006/12/31 PHP
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
基于initPHP的框架介绍
2013/04/18 PHP
php通过字符串调用函数示例
2014/03/02 PHP
让CodeIgniter数据库缓存自动过期的处理的方法
2014/06/12 PHP
php 利用socket发送GET,POST请求的实例代码
2020/07/04 PHP
设置jsf的选择框h:selectOneMenu为不可编辑状态的方法
2014/01/07 Javascript
js离开或刷新页面检测(且兼容FF,IE,Chrome)
2014/03/05 Javascript
弹出窗口并且此窗口带有半透明的遮罩层效果
2014/03/13 Javascript
jquery+json实现分页效果
2016/03/07 Javascript
详解nodeJS中读写文件方法的区别
2017/03/06 NodeJs
SpringMVC+bootstrap table实例详解
2017/06/02 Javascript
NodeJS搭建HTTP服务器的实现步骤
2018/10/12 NodeJs
JS中创建自定义类型的常用模式总结【工厂模式,构造函数模式,原型模式,动态原型模式等】
2019/01/19 Javascript
详解jquery和vue对比
2019/04/16 jQuery
[04:10]2018年度CS GO玩家最喜爱的主播-完美盛典
2018/12/16 DOTA
Python实现截屏的函数
2015/07/26 Python
Python下载指定页面上图片的方法
2016/05/12 Python
Python中easy_install 和 pip 的安装及使用
2017/06/05 Python
CentOS下使用yum安装python-pip失败的完美解决方法
2017/08/16 Python
Python学习笔记之open()函数打开文件路径报错问题
2018/04/28 Python
python实现自动发送报警监控邮件
2018/06/21 Python
python+pandas+时间、日期以及时间序列处理方法
2018/07/10 Python
python 执行终端/控制台命令的例子
2019/07/12 Python
python pandas.DataFrame.loc函数使用详解
2020/03/26 Python
一款纯css3实现的tab选项卡的实列教程
2014/12/11 HTML / CSS
AmazeUI 图标的示例代码
2020/08/13 HTML / CSS
美国婴儿和儿童服装购物网站:PatPat
2020/10/01 全球购物
简历里的自我评价范文
2014/02/24 职场文书
大学生村官承诺书
2014/03/28 职场文书
《一个小村庄的故事》教学反思
2014/04/13 职场文书
节电标语大全
2014/06/23 职场文书
齐云山导游词
2015/02/06 职场文书
聊一聊Redis与MySQL双写一致性如何保证
2021/06/26 Redis
Python first-order-model实现让照片动起来
2022/06/25 Python