Qt QListWidgetItem的添加與刪除

1.實現的功能

在listWidget中水平添QListWidgetItem,點擊按鈕刪除全部QListWidgetItem,下面直接上代碼,代碼中有每一步的註釋。函數

2.代碼實現

 1 #include "mainwindow.h"
 2 #include "ui_mainwindow.h"
 3 #include<QListWidget>
 4 #include<QDebug>
 5 MainWindow::MainWindow(QWidget *parent) :  6  QMainWindow(parent),  7     ui(new Ui::MainWindow)  8 {  9     ui->setupUi(this); 10     ui->listWidget->setViewMode(QListView::IconMode);   //設置顯示圖標模式
11     ui->listWidget->setIconSize(QSize(80, 80));         //設置圖標大小
12     ui->listWidget->setGridSize(QSize(100, 100));       //設置item大小 13 
14     // 設置QLisView大小改變時,圖標的調整模式,默認是固定的,能夠改爲自動調整
15     ui->listWidget->setResizeMode(QListView::Adjust);   //自動適應佈局 16     // 列表中的圖標默承認以拖動,若是想固定不能拖動,使用QListView::Static
17     ui->listWidget->setMovement(QListView::Static); 18     //新建item
19     QListWidgetItem* it1 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"1"); 20     QListWidgetItem* it2 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"2"); 21     QListWidgetItem* it3 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"3"); 22     QListWidgetItem* it4 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"4"); 23     QListWidgetItem* it5 = new QListWidgetItem(QIcon(":/icon/jpeg.png"),"5"); 24     //添加item
25     ui->listWidget->addItem(it1); 26     ui->listWidget->addItem(it2); 27     ui->listWidget->addItem(it3); 28     ui->listWidget->addItem(it4); 29     ui->listWidget->addItem(it5); 30 } 31 
32 MainWindow::~MainWindow() 33 { 34     delete ui; 35 } 36 
37 void MainWindow::on_PushButton_clicked() 38 { 39     int n=ui->listWidget->count();//獲取item的總數 40     //刪去全部item
41     for(int i=0;i<n;i++) 42  { 43         /*
44  使用takeItem(row)函數將QListWidget中的第row個item移除, 45  移除須要使用delete手動釋放其在堆上佔用的空間 46         */
47         QListWidgetItem *item = ui->listWidget->takeItem(0); //這裏是0,不是i,由於每移除一個item都會致使每一個item的row發生變化
48         delete item; 49  } 50 }

3.界面

相關文章
相關標籤/搜索