例如,QTreeWidgetItem的文本是[“Hello world”],有没有办法设置'Hello'的背景颜色?方法setBackground
似乎设置了整个列。
答案 0 :(得分:0)
将自定义窗口小部件设置为QTreeWidgetItem的默认视图,使用QLabel很容易。这是一个QListWidget和QListWidgetItem:
的示例QListWidgetItem* MainWindow::addColoredItem(const QString& name, const QColor& backcolor, const QColor& textcolor) {
QListWidgetItem* item = new QTreeWidgetItem(this);
QLabel* label = new QLabel(this);
label->setStyleSheet(QString("QLabel{background: %1; color %2;}").arg(backColor.name(), textColor.name()));
ui->listWidget->addItem(item);
ui->listWidget->setItemWidget(item, widget);
return item;
}
对于QTreeWidgetItem,请执行相同的步骤。