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中的zip()与*zip()函数详解
Feb 24 Python
Python使用Pickle模块进行数据保存和读取的讲解
Apr 09 Python
python爬虫租房信息在地图上显示的方法
May 13 Python
Django 拆分model和view的实现方法
Aug 16 Python
Python socket实现的文件下载器功能示例
Nov 15 Python
Python pyautogui模块实现鼠标键盘自动化方法详解
Feb 17 Python
new_zeros() pytorch版本的转换方式
Feb 18 Python
利用Python制作动态排名图的实现代码
Apr 09 Python
总结python 三种常见的内存泄漏场景
Nov 20 Python
Python进度条的使用
May 17 Python
分析Python感知线程状态的解决方案之Event与信号量
Jun 16 Python
Python pandas求方差和标准差的方法实例
Aug 04 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
自制汽车收音机天线:收听广播的技巧和方法
2021/03/02 无线电
让PHP支持断点续传的源码
2010/05/16 PHP
PHP查询附近的人及其距离的实现方法
2016/05/11 PHP
PHP安装GeoIP扩展根据IP获取地理位置及计算距离的方法
2016/07/01 PHP
php正则表达式基本知识与应用详解【经典教程】
2017/04/17 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
2017/06/08 PHP
张孝祥JavaScript学习阶段性总结(2)--(X)HTML学习
2007/02/03 Javascript
HTML5附件拖拽上传drop & google.gears实现代码
2011/04/28 Javascript
常见的原始JS选择器使用方法总结
2014/04/09 Javascript
JQuery弹出炫丽对话框的同时让背景变灰色
2014/05/22 Javascript
jquery属性,遍历,HTML操作方法详解
2016/09/17 Javascript
深入浅析JS是按值传递还是按引用传递(推荐)
2016/09/18 Javascript
RGB和YUV 多媒体编程基础详细介绍
2016/11/04 Javascript
input获取焦点时底部菜单被顶上来问题的解决办法
2017/01/24 Javascript
详解webpack+es6+angular1.x项目构建
2017/05/02 Javascript
详谈AngularJs 控制器、数据绑定、作用域
2017/07/09 Javascript
AngularJS创建一个上传照片的指令实例代码
2018/02/24 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
使用js原生实现年份轮播选择效果实例
2021/01/12 Javascript
[01:00]选手抵达华西村 整装待发备战2016国际邀请赛中国区预选赛
2016/06/25 DOTA
Python数组遍历的简单实现方法小结
2016/04/27 Python
浅析python协程相关概念
2018/01/20 Python
python语言基本语句用法总结
2019/06/11 Python
Python图片的横坐标汉字实例
2019/12/04 Python
Python动态声明变量赋值代码实例
2019/12/30 Python
Python基于模块Paramiko实现SSHv2协议
2020/04/28 Python
python 如何设置守护进程
2020/10/29 Python
HTML5视频支持检测(检查浏览器是否支持视频播放)
2013/06/08 HTML / CSS
老教师工作总结的自我评价
2013/09/27 职场文书
反腐倡廉演讲稿
2014/05/22 职场文书
班级出游活动计划书
2014/08/15 职场文书
公路局群众路线教育实践活动第一阶段工作汇报
2014/10/25 职场文书
2014年学校法制宣传日活动总结
2014/11/01 职场文书
宝葫芦的秘密观后感
2015/06/11 职场文书
python实现腾讯滑块验证码识别
2021/04/27 Python
python调试工具Birdseye的使用教程
2021/05/25 Python