改变细胞的背景颜色中的QT
-
25-09-2019 - |
题
我新的PyQt的,我仍然面临着一些问题新手:d,点击 我有一个QTableWidget的是委托在QChoice控制项(希望我说的很对) 我需要有单元格的背景颜色的变化每当用户改变的选择控制选择 点击 简述:如何更改表中的小部件单元格背景颜色? 点击 我使用PyQt4的和Python 2.6 点击 thanx提前
解决方案
使用
QTableWidgetItem QTableWidget.item(row, column)
和
QTableWidgetItem setData(role, data)
与
Qt.BackgroundRole
如下:
table.item(0, 0).setData(Qt.BackgroundRole, color).
和读到Qt中的模型/视图中使用的角色的机制。
其他提示
我用这样的:
brush = QtGui.QBrush(QtGui.QColor(255, 0, 0))
brush.setStyle(QtCore.Qt.SolidPattern)
item.setBackground(brush)
其中产品QTableWidgetItem对象
如果使用QTableView中使用这样的:
model.setData(model.index(0, 0), QVariant(QBrush(Qt::red)), Qt::BackgroundRole);
下面是一些代码有用行。对不起,冗余的,我想获得一些声望。
QStandardItemModel* model = new QStandardItemModel(numRows, numColumns);
QStringList headers;
headers.append("Date");
model->setHorizontalHeaderLabels(headers);
QStandardItem* item = new QStandardItem(text);
item->setData(Qt::AlignCenter, Qt::TextAlignmentRole);
item->setData(QVariant(QBrush(Qt::green)), Qt::BackgroundRole);
model->setItem(row, column, item);
或简单地:
item->setBackground(Qt::green);
嗨,你设置表插件的委托方法。在委托的绘画事件您处理变色技术.. 看看这个例如,在这里,他们已经做了自定义选择颜色。相同的方式,处理项目小区画
不隶属于 StackOverflow