【qt】QListWidget 组件2

简介: 【qt】QListWidget 组件

【qt】QListWidget 组件1:https://developer.aliyun.com/article/1523017

五.字体和图标的设置

1.字体:

对于ListWidget里面列表项的字体,我们可以继续设置。

    QFont font=ui->listWidget->font();
    font.setPointSize(30);
    ui->listWidget->setFont(font);

运行结果:

2.图标:

图标的大小我们同样可以通过listWidget来进行设置。

ui->listWidget->setIconSize(QSize(40,40));

运行结果:

六.设置显示模式

1.图标

对图标模式用action转到槽

void MainWindow::on_actionIconMode_triggered()
{
    ui->listWidget->setViewMode(QListView::IconMode);//设置为图标模式
}

运行结果:

但是感觉上下帖的好紧,我们可以用setSpacing来进行留白

ui->listWidget->setSpacing(20);//对四周都会产生留白效果

运行结果:

现在还有一个问题就是当我们缩小框的时候,列表项不能够自适应

就是这样:

解决方案:

ui->listWidget->setResizeMode(QListView::Adjust);//可以自适应窗口大小

运行结果:

2.列表

对列表模式action用转到槽:

void MainWindow::on_actionListMode_triggered()
{
    ui->listWidget->setViewMode(QListView::ListMode);//设置为列表模式
    //ui->listWidget->setSpacing(10);对四周都会产生留白效果
}


运行结果:

七.其他功能实现

1.删除

void MainWindow::on_actionDelete_triggered()
{
    int count=ui->listWidget->count();//先拿列表项的个数
    for(int i=count-1;i>=0;i--)//从后往前删,不然索引会错误
    {
        //如果列表项的复选框选中就进行删除
        if(ui->listWidget->item(i)->checkState()==Qt::Checked)
        {
            auto item=ui->listWidget->takeItem(i);//删除会返回这个值的指针,但是内存没有真正的删除
            delete item;
        }
    }
}

数学英语被我删了,运行结果:

2.全选

item可以拿到列表项,然后进行设置

void MainWindow::on_actionSelectAll_triggered()
{
    int count=ui->listWidget->count();
    for(int i=0;i<count;i++)
    {
        ui->listWidget->item(i)->setCheckState(Qt::Checked);
    }
}

运行结果:

【qt】QListWidget 组件3:https://developer.aliyun.com/article/1523028

相关文章
|
2月前
【qt】Tool Box组件
【qt】Tool Box组件
20 0
|
6天前
Qt安装之后添加或移除组件(Qt Creator 10.0.1)
Qt安装之后添加或移除组件(Qt Creator 10.0.1)
16 2
|
2月前
【qt】QTableWidget 表格组件3
【qt】QTableWidget 表格组件
18 0
|
2月前
【qt】QTableWidget 表格组件2
【qt】QTableWidget 表格组件
26 0
|
2月前
【qt】QTableWidget 表格组件1
【qt】QTableWidget 表格组件
19 0
|
2月前
|
索引 Windows
【qt】QTreeWidget 树形组件2
【qt】QTreeWidget 树形组件
22 0
|
2月前
|
C++
【qt】QTreeWidget 树形组件1
【qt】QTreeWidget 树形组件
27 0
|
2月前
【qt】QListWidget 组件3
【qt】QListWidget 组件
11 0
|
13天前
|
关系型数据库 MySQL 项目管理
数据库大作业——基于qt开发的图书管理系统(四)项目目录的整理与绘制登录页面
数据库大作业——基于qt开发的图书管理系统(四)项目目录的整理与绘制登录页面
|
13天前
|
SQL 关系型数据库 MySQL
数据库大作业——基于qt开发的图书管理系统(三)Qt连接Mysql数据库
数据库大作业——基于qt开发的图书管理系统(三)Qt连接Mysql数据库