[PyQt5] QListWidget 使用方法

简介

QListWidget是一个方便的类,它提供一个与QListView提供的列表视图类似的列表视图,但是具有一个用于添加和删除项目的经典的基于项目的接口。QListWidget使用一个内部模型来管理列表中的每个QListWidgetItem

对于更灵活的列表视图小部件,可以使用带有标准模型的QListView类。QListWidget是一个方便的类,它提供一个与QListView提供的列表视图类似的列表视图,但是具有一个用于添加和删除项目的经典的基于项目的接口。QListWidget使用一个内部模型来管理列表中的每个QListWidgetItem

对于更灵活的列表视图小部件,可以使用带有标准模型的QListView类。

QListWidget 官方文档 >

函数

函数名 描述 传参 返回数据
addItem(item or label) 在列表尾部中添加 QListWidgetItem 对象或字符串 QListWidgetItem or str
addItems(labels) 在列表尾部中添加 str 列表中的每条目 [str]
openPersistentEditor(item) 开始编辑 QListWidgetItem
closePersistentEditor(item) 结束编辑 QListWidgetItem
count() 列表条目数量 int
currentItem() 返回当前选中的条目 item QListWidgetItem
currentRow() 返回当前选中的条目 row int
editItem(item) 如果条目是可编辑的,则开始编辑该条目 QListWidgetItem
findItems(text, flags) 文本匹配返回匹配到的条目 text, flags [QListWidgetItem]
indexFromItem(item) 返回 QModelIndex 对象 QListWidgetItem QModelIndex
insertItem(row, item or label) 在列表位置插入 QListWidgetItem 对象或字符串 int,QListWidgetItem or str
insertItems(row, labels) 在列表位置插入字符串 str 列表中的每条目 int,[str]
isItemHidden(item) 官方不推荐使用
isItemSelected(item) 官方不推荐使用
isPersistentEditorOpen(item) 判断是否开启了编辑模式 QListWidgetItem bool
isSortingEnabled() 判断是否开启了排序模式 bool
item(row) 通过列表行找到 QListWidgetItem 对象 int QListWidgetItem
itemAt(p) 返回坐标处的 item (int,int) or QPoint QListWidgetItem
itemFromIndex(index) 返回 QListWidgetItem 对象 QModelIndex QListWidgetItem
itemWidget(item) 返回 item 中的 Widget 对象,如果没有返回 None QListWidgetItem Widget 对象
items(data) - - -
removeItemWidget(item) 移除 item 中的 Widget 对象 QListWidgetItem
row(item) 通过 QListWidgetItem 找到 row QListWidgetItem int
selectedItems() 返回当前选中的条目 多个 [QListWidgetItem]
setCurrentItem(item) 设置当前选中的条目 item QListWidgetItem
setCurrentRow(row) 设置当前选中的条目 row int
setItemHidden(item, hide) 官方不推荐使用
setItemSelected(item, select) 官方不推荐使用
setItemWidget(item, widget) item 设置 widget QListWidgetItem,Widget
setSortingEnabled(enable) 设置排序模式开关 bool
sortItems([order=Qt.AscendingOrder]) 默认按升序重新排列条目
takeItem(row) 移除列表条目 int
visualItemRect(item) 返回条目在列表的坐标 与 尺寸 QListWidgetItem QRect

虚函数

函数名 描述
dropMimeData(index, data, action) 处理由外部拖放操作提供的数据,该操作以给定索引中的给定操作结束。如果模型可以处理数据和动作,则返回true 否则返回false
mimeData(items) 返回一个对象,该对象包含指定项的序列化描述。用于描述项的格式是从mimeTypes()函数获得的
mimeTypes() 返回可用于描述 listwidget 项列表的 MIME 类型列表
supportedDropActions() 返回此视图支持的拖放操作

函数名 描述
clear() 删除视图中的所有项,警告:所有项目将被永久删除
scrollToItem(item[, hint=EnsureVisible]) 必要时滚动视图以确保项目可见。hint指定操作后项的位置。

信号

信号名 触发条件 返回数据
currentItemChanged(current, previous) 选中行发生了改变 当前 QListWidgetItem 对象,之前 QListWidgetItem对象
currentRowChanged(currentRow) 选中行发生了改变 当前行 row
currentTextChanged(currentRow) 选中行发生了改变 当前行 text
itemClicked(item) 点击列表中的条目时 QListWidgetItem 对象
itemChanged(item) 列表中有变化后 QListWidgetItem 对象
itemActivated(item) 连击列表中的条目时 QListWidgetItem 对象
itemDoubleClicked(item) 双击列表中的条目时 QListWidgetItem 对象
itemEntered(item) 拖拽列表中的条目时 对应 QListWidgetItem 对象
itemPressed(item) 按下列表中的条目时 QListWidgetItem 对象
itemSelectionChanged() 选中行发生了改变
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!