首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从QPersistentModelIndex获取QModelIndex

从QPersistentModelIndex获取QModelIndex
EN

Stack Overflow用户
提问于 2020-07-20 23:59:23
回答 1查看 220关注 0票数 1

我有一个QSortFilterProxyModel,我需要选择要删除的行,所以我使用了一个QPersistentModelIndexQPersistentModelIndex可以很好地处理多行选择,而其他方法不能删除所有行。我的问题是,我不能用它需要QModelIndexQPersistentModelIndex来mapToSource。我该如何克服这个问题呢?

代码语言:javascript
复制
    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)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-21 00:16:37

如果你想把QPersistentModelIndex转换成QModelIndex,你只需要使用:

代码语言:javascript
复制
for p_index in index_list: 
    index = QModelIndex(p_index)
    ix = table_view.model().mapToSource(index)  
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62999366

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档