Как удалить ненужные QLineEdit из столбца QTableView - PullRequest
0 голосов
/ 05 апреля 2019

Я пытаюсь создать интерфейс для симулятора Modbus с использованием PyQt. Я настроил QTableView для аналоговых сигналов просто отлично, но для пользовательских входов цифрового сигнала я хотел бы иметь столбец QCheckBox. Однако, когда я пытаюсь представить это, я застреваю с нежелательными QLineEdit, от которых я не могу избавиться рядом с флажками.

Вот текущий код для построения таблицы цифровых сигналов:

    def create_digital_row(self, data_list):
        """
        Get data for SDI tab
        """
        value = ''
        address = data_list[0]
        bit = data_list[1]
        name = data_list[2]
        group = data_list[3]
        ref = str(address) + '@' + str(bit) + '#'
        digital_data = [address, bit, group, name, value, ref]
        row_data = []

        for column in xrange(0, len(digital_data)):
            item = QtGui.QStandardItem(str(digital_data[column]))
            item.setData(QtCore.Qt.AlignLeft, QtCore.Qt.TextAlignmentRole) 
            item.setData(QtCore.Qt.AlignVCenter, QtCore.Qt.TextAlignmentRole) 
            if column == 4:
                item.setCheckable(True)
            if column != 4:
                item.setEditable(False)

            row_data.append(item)
        return row_data

Я попытался установить value на None и (в настоящее время) на пустую строку. Установка его в None возвращает строку «None» в нежелательном QLineEdit, а пустая строка просто создает пустой QLineEdit.

Я ознакомился с документацией Qt и попробовал другие методы, такие как setFlags и т. Д., Но из-за недостатка знаний решить проблему очень сложно. Этот вопрос также, похоже, не был рассмотрен ни в SO, ни в QtCentre - ближе всего я обнаружил противоположность (нежелательные флажки), но решение не применимо к моему делу.

Я ценю, что могу просто проигнорировать это, но из-за качества моего кодирования и просто для улучшения моего понимания, я действительно хотел бы докопаться до сути.

Извиняюсь, если я неправильно понял терминологию, вся эта жаворонок для меня очень нова.

Ура!

...