[PyQt5] QListWidget 使用方法
简介
QListWidget
是一个方便的类,它提供一个与QListView
提供的列表视图类似的列表视图,但是具有一个用于添加和删除项目的经典的基于项目的接口。QListWidget
使用一个内部模型来管理列表中的每个QListWidgetItem
。
对于更灵活的列表视图小部件,可以使用带有标准模型的QListView
类。QListWidget
是一个方便的类,它提供一个与QListView
提供的列表视图类似的列表视图,但是具有一个用于添加和删除项目的经典的基于项目的接口。QListWidget
使用一个内部模型来管理列表中的每个QListWidgetItem
。
对于更灵活的列表视图小部件,可以使用带有标准模型的QListView
类。
函数
函数名 | 描述 | 传参 | 返回数据 |
---|---|---|---|
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 协议》,转载必须注明作者和本文链接
推荐文章: