Qt之QListWidgetItem的添加与删除
Qt 删除 添加
2023-09-14 09:07:01 时间
1.实现的功能
在listWidget中水平添QListWidgetItem,点击按钮删除所有QListWidgetItem,下面直接上代码,代码中有每一步的注释。
2.代码实现
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QListWidget>
#include<QDebug>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
ui->listWidget->setViewMode(QListView::IconMode); //设置显示图标模式
ui->listWidget->setIconSize(QSize(80, 80)); //设置图标大小
ui->listWidget->setGridSize(QSize(100, 100)); //设置item大小
// 设置QLisView大小改变时,图标的调整模式,默认是固定的,可以改成自动调整
ui->listWidget->setResizeMode(QListView::Adjust); //自动适应布局
// 列表中的图标默认可以拖动,如果想固定不能拖动,使用QListView::Static
ui->listWidget->setMovement(QListView::Static);
//新建item
QListWidgetItem* it1 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"1");
QListWidgetItem* it2 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"2");
QListWidgetItem* it3 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"3");
QListWidgetItem* it4 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"4");
QListWidgetItem* it5 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"5");
//添加item
ui->listWidget->addItem(it1);
ui->listWidget->addItem(it2);
ui->listWidget->addItem(it3);
ui->listWidget->addItem(it4);
ui->listWidget->addItem(it5);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_PushButton_clicked()
{
int n=ui->listWidget->count();//获取item的总数
//删去所有item
for(int i=0;i<n;i++)
{
/*
使用takeItem(row)函数将QListWidget中的第row个item移除,
移除需要使用delete手动释放其在堆上占用的空间
*/
QListWidgetItem *item = ui->listWidget->takeItem(0); //这里是0,不是i,因为每移除一个item都会导致每个item的row发生变化
delete item;
}
}
3.界面
相关文章
- pycharm qt designer_pycharm怎么运行py文件
- Qt的双缓冲技术(double buffering)
- emwin实体按键_qt指示灯控件
- Qt中各种消息框的使用
- 二、Qt定时器与文本编辑器制作《QT 入门到实战》
- 调试Linux下Qt的调试实践指南(linux下qt)
- Linux安装Qt:轻松搞定(linux如何安装qt)
- Linux 环境下运用 Qt 编程的秘籍(linux下的qt编程)
- Linux下QT实现摄像头程序开发(linuxqt摄像头)
- Linux虚拟机中安装Qt的指南(linux虚拟机安装qt)
- Qt操作MYSQL:只需几步就能实现(qt操作mysql)
- 开发Linux下用Qt开发:简单易用的开发方式(linux用qt)
- Linux上静态编译Qt应用实现方案(linux静态编译qt)
- 实现快速 Linux Qt 配置方案(linuxqt配置)
- Qt与Oracle数据库的高效结合(qt数据库oracle)
- 解决Qt连接MySQL的问题(qt连接不上mysql)
- 如何在QT应用程序中使用MYSQL进行编程?(qt的mysql编程)
- Qt下Linux命令实现快速开发(qtlinux命令)
- 在Qt中编译Oracle环境(qt编译 oracle)
- Linux下安装Qt操作指南(linux下怎么安装qt)
- 使用Linux和Qt搭建强大的应用环境(linux qt 环境)