Qt: 自定义QListWidgetitem两个控件一个靠左一个靠右
1、创建子控件
QWidget *itemWidget = new QWidget(this);
QLabel *titleLabel = new QLabel(itemWidget);
titleLabel->setFixedSize(itemWidth, childHeight);
titleLabel->setAlignment(Qt::AlignLeft);
titleLabel->setText("sss");
titleLabel->setStyleSheet("border-width: 1px;border-style: solid;border-color: rgb(0, 0, 0)");
QLabel *lb = new QLabel(itemWidget);
lb->setStyleSheet("border-width: 1px;border-style: solid;border-color: rgb(0, 0, 0)");
lb->setFixedSize(itemWidth,childHeight);
lb->setAlignment(Qt::AlignRight);
QImage image;
image.load(":/images/images/listItem.png");
lb->setPixmap(QPixmap::fromImage(image));
lb->show();
2、添加约束
QGridLayout * layout = new QGridLayout(itemWidget);
layout->addWidget(titleLabel,0,0,Qt::AlignVCenter | Qt::AlignLeft);
layout->addWidget(lb,0,1,Qt::AlignVCenter | Qt::AlignRight);
约束后的效果

3、修正效果
QGridLayout * layout = new QGridLayout(itemWidget);
layout->addWidget(titleLabel,0,0,Qt::AlignVCenter | Qt::AlignLeft);
layout->addWidget(lb,0,1,Qt::AlignVCenter | Qt::AlignRight);
layout->setContentsMargins(0,0,0,0);

4、添加自定义 item
QListWidgetItem *item = new QListWidgetItem();
QSize size = item->sizeHint();
item->setSizeHint(QSize(size.width(), height));
ui->listWidget->addItem(item);
itemWidget->setSizeIncrement(size.width(), height);
ui->listWidget->setItemWidget(item, itemWidget);