QListWidget 是一個升級版本的QListView , 它已經建立一個基于數據存儲模型(QListWidgetItem),直接調用addItem()函數就可以添加條目(Item)。
# -*- 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() #創(chuàng)建一個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; }
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。