QListWidget

本文详细介绍了如何使用Qt进行ListWidget的操作,包括向列表框中添加字段、修改选中行的内容和样式、删除选中行及删除所有行的方法。此外,还展示了两种不同的显示风格:ListMode和IconMode。
摘要由CSDN通过智能技术生成

在这里插入图片描述

(1)向列表框中(ListWidget)添加字段

方法1:

for(int i=0;i<9;i++)
{
    ui->listWidget->addItem(QString::number(i)+" item");
}

方法2:

for(int i=0;i<9;i++)
{
    QListWidgetItem *item = new QListWidgetItem;
    item->setText(QString::number(i)+" item");
    item->setTextColor(Qt::green);//设置字体的颜色
    ui->listWidget->addItem(item);
}

(2)修改选中的行

void ListWidget::on_pushButton_clicked()
{
   QListWidgetItem *item = ui->listWidget->currentItem();//得到目标行中的值,不选则默认为第0行
   qDebug()<<item;
   item->setText("Hello");//将选中的行文本改为
   item->setTextColor(Qt::red);//设置字体的颜色
   item->setBackgroundColor(Qt::gray);//设置对应背景的颜色
}

注:
int a = ui->listWidget->currentRow();//得到选中的行,返回值为int
QString str = item->text();//得到选中行的文本

(3)删除选中行

void mk::DeletSlots()//删除选中行
{
    QListWidgetItem *item = ui->listWidget->takeItem   ->listWidget->currentRow());
    if(item == NULL)
    {
        QMessageBox::information(this,"","Pelese Choose");
        return;
    }
    delete item;
}

(4)删除所有行

void mk::DeletAllSlots()//删除所有行
{
      int nCount = 0;
      while(1)
       {
         QListWidgetItem *item = ui->listWidget->takeItem(nCount);
         if(item)
         {
             delete item;
         }
         else
         {
             return;
         }
      }
}

(5)风格

风格1:ListMode:
在这里插入图片描述
风格2:IconMode:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值