在悬停时更改QTreewidget标题背景可以通过以下步骤实现:
class CustomTreeWidgetItem : public QTreeWidgetItem {
public:
CustomTreeWidgetItem(QTreeWidget* parent) : QTreeWidgetItem(parent) {}
void paint(QPainter* painter, const QStyleOptionViewItem& option, int column) const override {
if (option.state & QStyle::State_MouseOver) {
painter->fillRect(option.rect, Qt::yellow); // 更改标题背景色
}
QTreeWidgetItem::paint(painter, option, column);
}
};
QTreeWidget* treeWidget = new QTreeWidget(this);
CustomTreeWidgetItem* item1 = new CustomTreeWidgetItem(treeWidget);
item1->setText(0, "Item 1");
// 添加更多的自定义QTreeWidgetItem项
treeWidget->addTopLevelItem(item1);
// 添加更多的顶级项
这样,在悬停时,QTreewidget的标题背景色将会更改为黄色。你可以根据实际需求修改代码中的背景色和其他样式属性。
关于QTreewidget和自定义QTreeWidgetItem的更多信息,可以参考腾讯云的相关文档:
领取专属 10元无门槛券
手把手带您无忧上云