小编Mar*_*ker的帖子

将样式表设置为 QListWidgetItem 后,QListWidgetItem 上的 SetBackGround 不再起作用

我正在尝试使用 QListWidgetItems 制作 QListWidget。我希望 QListWidgetItems 具有边框和背景,例如绿色。所选项目应该有另一个背景,例如红色。我试图用样式表创建边框。这工作正常。但我无法再设置项目的个人背景颜色。

下面是我正在使用的一段代码

QListWidget *listWidget = new QListWidget();
QListWidgetItem *wi = new QListWidgetItem;
wi->setText("greenbg");
wi->setBackgroundColor(Qt::green);
listWidget->addItem(wi);

listWidget->setStyleSheet( "QListWidget::item {border-style: solid; border-width:1px; border-color:black;}");

QListWidgetItem *wi2 = new QListWidgetItem;
wi2->setText("redbg");
wi2->setBackgroundColor(Qt::red);
listWidget->addItem(wi2);
listWidget->show;
Run Code Online (Sandbox Code Playgroud)

这将显示列表透明。删除 setStyleSheet 行后,项目为绿色和红色。我做错了什么或者不可能,我应该使用自定义小部件吗?

qt

4
推荐指数
1
解决办法
8866
查看次数

标签 统计

qt ×1