qtreeview测试项目是否为checkab

2024-05-20 17:33:42 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在python/pyside的QTreeview中测试项目是否可检查?在

def set_selected_shots(self, state=None):
    checkstate = QtCore.Qt.Checked if state else QtCore.Qt.Unchecked
    selected_rows = self.ui_shots.selectionModel().selectedRows()

    for idx in selected_rows:
        model = idx.model()

Tags: selfnonemodeldefqt测试项目rowsstate
1条回答
网友
1楼 · 发布于 2024-05-20 17:33:42

如果使用的是QStandardItemModel,则必须使用itemFromIndex()方法,如果提供索引,则返回该项,然后使用checkState()方法检查状态:

selected_rows = self.ui_shots.selectionModel().selectedRows()
for idx in selected_rows:
    item = idx.model().itemFromIndex(idx)
    if item.isCheckable():
        if item.checkState() == Qt.Checked:
            print("checked")
        else:
            print("unchecked")

相关问题 更多 >