Найти - Пользователи
Полная версия: Метод перевода значения и вида колонки(ячейки)
Начало » Python для новичков » Метод перевода значения и вида колонки(ячейки)
1
Maxem
Есть таблица на форме QTableWidget (PyQt5, Python 3.4)
имеется словарик типа
data = {'Base1':[11,12,13],
                'Base2':[21,22,23],
                'Base3':[31,32,33],
                'Base4':[41,42,43],}
допустим 3 колонки значений
все замечательно запихивается в таблицу, но мне надо в 4й колонке добавить “галочки” типа бул. Гугление и документация не помогли(не понял), т.е как поменять колонку с текстом на колонку с булами?
ах да и после отметок на форме все желательно запихнуть в словарь типа
data = {'Base1':[11,12,13,True],
                'Base2':[21,22,23,True],
                'Base3':[31,32,33,False],
                'Base4':[41,42,43,True],}
как цифры запихнуть я понял или после перевода колонки на bool-значения True и False сами в словарь будут скидываться?
Rodegast
# Галочка
item.setCheckState(QtCore.Qt.Checked)
# Нет галочки
item.setCheckState(QtCore.Qt.Unchecked)
# Текущее состояние (Checked или Unchecked)
item.checkState()
Maxem
Rodegast, спасибо, круто, а как на форме мне столбец в галочки преобразовать визуально?
Rodegast
В QTableWidget содержимое ячейки можно задавать только через item. Что-бы это происходило автоматически надо использовать QTableView с соответствующей моделью и делегатой.
Maxem
А каким методом присвоить ячейке тип сheckBox(или другое)

например ячейке 1-1
newitem = QTableWidgetItem()?????
или
newitem = ?????????               
self.tableWidget.setItem(0, 0, newitem)
Rodegast
Можно устанавливать виджеты в ячейки, но в случаи с QTableWidget/QTreeWidget это может работать глючно.
# Установка виджета:
self.tableWidget.setCellWidget(0, 0, QtGui.QCheckBox())
# Получение виджета:
widget = self.tableWidget.cellWidget(0, 0) 
Maxem
не совсем так
# Установка виджета:
self.tableWidget.setCellWidget(0, 0, QtWidgets.QCheckBox())
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB