- 博客主页:https://blog.csdn.net/weixin_42258743
- 欢迎点赞 收藏 ⭐留言 如有错误敬请指正!
- 本文由 Mr.Gong 于 CSDN原创首发,转载请注明出处!
- 时间就像一张网,你撒在哪里,你的收获就在哪里……^-^
QListWidget类可以实现基于列表的方式展示数据。
QListWidget
是 Qt 所提供的控件类,用于创建列表,该类的继承关系如下:
QListWidget -> QListView -> QAbstractItemView -> QAbstractScrollArea -> QFrame -> QWidget
其中,QListView
也可用于创建列表,其与QList Widget的不同之处在于,QListView功能更加强大,可以制作复杂的列表,而QListWidget只能穿件结构简单的列表
创建好的QListWidget类对象,是一个空列表,我们可以利用QListWidget类及父类提供的属性、方法等,对新建列表执行各类所需操作。
(1)遍历QListWidget列表框所有item,并删除重复item
//删除重复列表项
void listWidget::deleteRepetitionItem(QString str)
{
QString list;
int Row=0;
while((ui->listWidget_cali->count()) > Row)
{
list=ui->listWidget_cali->item(Row)->text();
if(str==list)
{
qDebug()<<"删除成功";
ui->listWidget_cali->takeItem(Row);
}
Row++;
}
}
(2)遍历QListWidget列表框所有item,增加未重复item
//增加未重复列表项
void listWidget::add_unRepetitionItem(QString str)
{
QString list;
int Row = 0;
while((ui->listWidget_cali->count()) > Row )
{
list=ui->listWidget_cali->item(Row)->text();
if(str==list)
return;
Row++;
}
ui->listWidget_cali->addItem(str);
}
//如果当前列表控件中含有列表项数量为空
if (ui.listWidget_calib->count() <= 0)
{
//添加一个弹窗,默认未点击Yes或No选项时,执行了Yes操作
QMessageBox::StandardButton result = QMessageBox::information(NULL, u8"提示", u8"是否重新创建模板?", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
//弹窗选项选择Yes
if (result == QMessageBox::Yes)
return;
else
{
//在列表内添加数字显示
int m_count = 6;
ui.listWidget_calib->clear();
for (int i = 0; i < m_count; i++)
{
ui.listWidget_calib->addItem(QString::number(i));
}
}
}```