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 27 Python
Python函数可变参数定义及其参数传递方式实例详解
May 25 Python
django通过ajax发起请求返回JSON格式数据的方法
Jun 04 Python
python清除字符串里非数字字符的方法
Jul 02 Python
Python使用getpass库读取密码的示例
Oct 10 Python
JSONLINT:python的json数据验证库实例解析
Nov 28 Python
深入理解Django-Signals信号量
Feb 19 Python
python写入文件自动换行问题的方法
Jul 05 Python
anaconda中更改python版本的方法步骤
Jul 14 Python
python3 BeautifulSoup模块使用字典的方法抓取a标签内的数据示例
Nov 28 Python
python中round函数如何使用
Jun 19 Python
Python实现手绘图效果实例分享
Jul 22 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
PHP4实际应用经验篇(1)
2006/10/09 PHP
php发送邮件的问题详解
2015/06/22 PHP
js脚本学习 比较实用的基础
2006/09/07 Javascript
用js判断用户浏览器是否是XP SP2的IE6
2007/03/08 Javascript
JavaScript Event学习第七章 事件属性
2010/02/07 Javascript
加载jQuery后$冲突的解决办法
2010/07/09 Javascript
如何使用jQuery Draggable和Droppable实现拖拽功能
2013/07/05 Javascript
jquery 添加节点的几种方法介绍
2013/09/04 Javascript
Javascript实现真实字符串剩余字数提示的实例代码
2013/10/22 Javascript
node.js中的http.response.end方法使用说明
2014/12/14 Javascript
JQuery创建DOM节点的方法
2015/06/11 Javascript
js输出数据精确到小数点后n位代码
2016/07/02 Javascript
Javascript计算二维数组重复值示例代码
2016/12/18 Javascript
vue2.0实战之基础入门(1)
2017/03/27 Javascript
MvcPager分页控件 适用于Bootstrap
2017/06/03 Javascript
详解使用路由延迟加载 Angular 模块
2017/10/12 Javascript
JS实现运动缓冲效果的封装函数示例
2018/02/18 Javascript
vue-cli3.0 脚手架搭建项目的过程详解
2018/10/19 Javascript
Python中List.count()方法的使用教程
2015/05/20 Python
详解Python中映射类型的内建函数和工厂函数
2015/08/19 Python
Python的时间模块datetime详解
2017/04/17 Python
python中sys.argv函数精简概括
2018/07/08 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
Python队列RabbitMQ 使用方法实例记录
2019/08/05 Python
如何基于python操作excel并获取内容
2019/12/24 Python
Django调用百度AI接口实现人脸注册登录代码实例
2020/04/23 Python
html5指南-1.html5全局属性(html5 global attributes)深入理解
2013/01/07 HTML / CSS
英国一家集合了众多有才华设计师品牌的奢侈店:Wolf & Badger
2018/04/18 全球购物
德国亚洲食品网上商店:asiafoodland.de
2019/12/28 全球购物
公司前台接待岗位职责
2013/12/03 职场文书
业务员薪酬管理制度
2014/01/15 职场文书
员工规章制度范本
2015/08/07 职场文书
创业计划书之少年玩具店
2019/09/05 职场文书
创业计划书之暑假培训班
2019/11/09 职场文书
python生成随机数、随机字符、随机字符串
2021/04/06 Python
基于python制作简易版学生信息管理系统
2021/04/20 Python