首页 > 编程语言 > pyqt5 QListWidget的用法解析
2021
03-19

pyqt5 QListWidget的用法解析

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;
}
 

以上为个人经验,希望能给大家一个参考,也希望大家多多支持自学编程网。如有错误或未考虑完全的地方,望不吝赐教。

编程技巧