gpt4 book ai didi

python - 从 QPersistentModelIndex 获取 QModelIndex

转载 作者:行者123 更新时间:2023-12-05 02:51:49 27 4
gpt4 key购买 nike

我有一个QSortFilterProxyModel,我需要选择要删除的行,所以我使用了一个QPersistentModelIndexQPersistentModelIndex 适用于多行选择,而其他方法不会删除所有行。我的问题是,我无法使用它需要 QModelIndexQPersistentModelIndex mapToSource。我该如何克服这个问题?

    model = QStandardItemModel()
filter = QSortFilterProxyModel()
self.filter.setSourceModel(model)
# Set the model/check function
table_view = QTableView()
table_view.setModel(filter)

# Delete Row using
index_list = []
for model_index in table_view.selectionModel().selectedRows():
index = QPersistentModelIndex(model_index)
index_list.append(index)

if index_list:
for index in index_list:
"The error is here, it only accepts `QModelIndex` and refuses `QPersistentModelIndex`"
ix = table_view.model().mapToSource(index.row())
# ix = table_view.model().mapToSource(index)
item = model.itemFromIndex(ix)

最佳答案

如果你想将 QPersistentModelIndex 转换为 QModelIndex,你只需要使用:

for p_index in index_list: 
index = QModelIndex(p_index)
ix = table_view.model().mapToSource(index)

关于python - 从 QPersistentModelIndex 获取 QModelIndex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62999366/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com