1、简介
QListWidget 是一个升级版本的QListView , 它已经建立一个基于数据存储模型(QListWidgetItem),直接调用addItem()函数就可以添加条目(Item)。
2、功能实现
# -*- coding: utf-8 -*- ''' 【简介】 PyQt5中 QListWidget 例子 ''' import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class ListWidget(QListWidget): def clicked(self,item): QMessageBox.information(self, "ListWidget", "你选择了: "+item.text())# 显示出消息提示框 if __name__ == '__main__': app = QApplication(sys.argv) listWidget = ListWidget() #创建一个listWidget 实例 listWidget.resize(300,120) #定义尺寸大小 listWidget.addItem("Item 1"); #添加item listWidget.addItem("Item 2"); listWidget.addItem("Item 3"); listWidget.addItem("Item 4"); listWidget.setWindowTitle('QListwidget 例子') #设置标题 listWidget.itemClicked.connect(listWidget.clicked) #绑定点击事件 listWidget.show() sys.exit(app.exec_())
补充:QListWidget右键菜单功能Demo
1.
ui.listWidget_Filelist->setContextMenuPolicy(Qt::CustomContextMenu);
2.
void SonicAttribute::on_listWidget_Filelist_customContextMenuRequested(const QPoint &pos) { QListWidgetItem* curItem = ui.listWidget_Filelist->itemAt(pos); if (curItem == NULL) return; QMenu *popMenu = new QMenu(this); QAction *deleteSeed = new QAction(tr("Delete"), this); popMenu->addAction(deleteSeed); connect(deleteSeed, SIGNAL(triggered()), this, SLOT(deleteSeedSlot())); popMenu->exec(QCursor::pos()); delete popMenu; delete deleteSeed; }
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。