我有一个 QListWidget,其中包含可以编辑的项目(其待办事项列表),每个项目都有值 Qt::ItemIsEditable ,它允许我双击编辑文本值,但是当我这样做时,文本框变成黑色,我想将背景颜色从黑色更改为其他颜色,有人知道该怎么做吗?
这是创建列表中所有项目的代码
MainWindow::MainWindow(QWidget *parent):
QMainWindow(parent),
ui(new Ui::MainWindow)
{ ui->setupUi(这个);
QFile file(path);
if(!file.open(QIODevice::ReadOnly)) {
QMessageBox::information(0, "error", file.errorString());
}
QTextStream in(&file);
while(!in.atEnd()) {
QListWidgetItem *item = new QListWidgetItem(in.readLine(), ui->listWidget);
if(item->checkState())
{
item->setCheckState(Qt::Checked);
}
else
{
item->setCheckState(Qt::Unchecked);
}
item->setForeground(QBrush(Qt::black));
ui->listWidget->addItem(item);
item->setFlags(item->flags() | Qt::ItemIsEditable | Qt::ItemIsUserCheckable);
}
file.close();
}
试试这个:
ui->listWidget->setStyleSheet("QListView QLineEdit{background:green}");;