一、介绍
list widget控件其实是用的比较多的一个控件了,有时候我们要展示行数据,但是又希望在列表中能够展示一些其他的东西,比如图片呀,按钮呀之类的能够再在列表中能够交互,例如以下界面
里面要展示数据,还要展示图片,还有按钮,进度条等等,这时候list widget就可以用上了。
二、使用步骤
1.首先设计器里面拉一个list widget控件
2.再新建一个UI放入要展示的内容控件
其实新建的这个UI就当成行插入到list widget里面去了,每插入一行数据,其实就是一个UI。
3.添加数据
for (int i = 0; i < 10; i++)
{
SktListItem *pItem = new SktListItem(this);
pItem->SktInitItem();
QListWidgetItem *pWItem = new QListWidgetItem(ui.listWidget);
pWItem->setSizeHint(QSize(400, 120));
// pWItem->setBackgroundColor(QColor(118, 238, 198));
ui.listWidget->setSpacing(5);
ui.listWidget->setItemWidget(pWItem, pItem);
}
比如以上添加10行,其实中每一行都是一个UI,因此我们需要NEW,并且初始化,最后放进list widget中。
4.双击事件获取内容并删除
void SktQtTest::SktItemDoubleClicked(QListWidgetItem *item)
{
SktListItem *pUI = static_cast<SktListItem *>(ui.listWidget->itemWidget(item));
QString qsSize = pUI->ui.sizeLr->text();
QString qsTime = pUI->ui.timeLr->text();
ui.listWidget->removeItemWidget(item);
delete item;
}
connect(ui.listWidget, SIGNAL(itemDoubleClicked(QListWidgetItem *)), this, SLOT(SktItemDoubleClicked(QListWidgetItem *)));
首选给listwidget双击信号连接到我们要处理的槽,然后在槽中我们获取当前选中的行并获取内容,然后我们再删除当前选中行。
总结
以上就是qt中list widget的使用方法,欢迎大家讨论。
工程免费下载地址,包含源代码,后续继续更新。
本文含有隐藏内容,请 开通VIP 后查看