qtreeview проверяет, можно ли проверить элемент

Как я могу проверить, можно ли проверить элемент в QTreeview в python/pyside?

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()

person JokerMartini    schedule 10.10.2017    source источник


Ответы (1)


Если вы используете 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")
person eyllanesc    schedule 10.10.2017