您的位置:首页 > 编程语言 > Qt开发

QT中如何在QListWidget中添加自定义的 tiem

2017-06-05 17:10 381 查看
QWidget*container=
newQWidget;
QHBoxLayout *hLayout = new QHBoxLayout();

hLayout->addWidget(new QLabel("1"));

hLayout->addWidget(new QLabel("2"));

hLayout->addWidget(new QLabel("3"));

hLayout->addWidget(new QPushButton("4"));


container->setLayout(hLayout);


QListWidgetItem *item = new QListWidgetItem();

QSize size = item->sizeHint();

item->setSizeHint(QSize(size.width(),30));


ui->listWidget->addItem(item);

container->setSizeIncrement(size.width(),30);

ui->listWidget->setItemWidget(item,container);

//form 窗口是通过 设计器 设计的基于QWidget的窗体



QListWidgetItem *itemWidget = new QListWidgetItem();

ui->listWidget->setStyleSheet("QListWidget::Item{margin:0px 0px 0px 0px;}");

QSize sizea = itemWidget->sizeHint();

ui->listWidget->addItem(itemWidget);


Form *form = new Form( ui->listWidget);

form->setSizeIncrement(size.width(),30);

ui->listWidget->setItemWidget(itemWidget,form);

itemWidget->setSizeHint(QSize(form->rect().width(),form->rect().height()));


connect(ui->listWidget,SIGNAL(itemClicked(QListWidgetItem *)),this,SLOT(itemClicked(QListWidgetItem *)));
 http://www.cnblogs.com/findumars/p/5655015.html 
[code]//设置样式,直接在函数中设置
list_widget->setStyleSheet("QListWidget{border:1px solid gray; color:black; }"
"QListWidget::Item{padding-top:20px; padding-bottom:4px; }"
"QListWidget::Item:hover{background:skyblue; }"
"QListWidget::item:selected{background:lightgray; color:red; }"
"QListWidget::item:selected:!active{border-width:0px; background:lightgreen; }"
);




                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: