QStringListModel便利所有Item
时间: 2024-01-20 18:02:58 浏览: 28
你可以使用 QStringListModel 的 stringList() 函数来获取所有的 item 的列表,然后使用 for 循环遍历该列表,示例代码如下:
```python
model = QStringListModel(["Item 1", "Item 2", "Item 3"])
item_list = model.stringList()
for item in item_list:
print(item)
```
这将会创建一个 QStringListModel 对象,并将一个字符串列表作为数据源设置到该 model 中。然后使用 stringList() 函数获取该 model 中的所有 item,将其保存到 item_list 变量中。最后,使用 for 循环遍历 item_list,便利所有的 item 并打印出来。
如果你想在遍历的过程中修改 item,可以使用 setStringList() 函数来重新设置该 model 的数据源,示例代码如下:
```python
model = QStringListModel(["Item 1", "Item 2", "Item 3"])
item_list = model.stringList()
for i in range(len(item_list)):
item_list[i] = "New Item " + str(i+1)
model.setStringList(item_list)
```
这将会创建一个 QStringListModel 对象,并将一个字符串列表作为数据源设置到该 model 中。然后使用 stringList() 函数获取该 model 中的所有 item,将其保存到 item_list 变量中。接下来,使用 for 循环遍历 item_list,并将其修改为 "New Item i" 的格式。最后,使用 setStringList() 函数将修改后的 item_list 重新设置为该 model 的数据源。这将会更新 QListView 中的所有 item。