QListView 和 QStandardItemModel的使用

实际上用这两个类也就创建了一个list,先看下实现的是一个什么样的东西
 
                         QListView 和 QStandardItemModel的使用_第1张图片

代码如下:

.cpp

#include "MyWidget.h"
#include <qlistview.h>
#include <qstandarditemmodel.h>
#define MEMORY_FREE(a)if(a){delete a; a = NULL;}

MyWidget::MyWidget(QWidget* parent) : QWidget(parent)
{
    iListView               = new QListView(this);
    iStandardItemModel      = new QStandardItemModel(this);
   
    QStandardItem* item1    = new QStandardItem(QIcon("c:\\Img\\MyListViewEx\\1.bmp"), "item1");
    QStandardItem* item2    = new QStandardItem(QIcon("c:\\Img\\MyListViewEx\\2.bmp"), "item2");
    QStandardItem* item3    = new QStandardItem("item3");
    iStandardItemModel->appendRow(item1);
    iStandardItemModel->appendRow(item2);
    iStandardItemModel->appendRow(item3);
   
    iListView->setIconSize(QSize(40, 30));
    iListView->setModel(iStandardItemModel);
    iListView->setGeometry(QRect(0, 0, 360, 640));
}

MyWidget::~MyWidget()
{
    MEMORY_FREE(iListView);
    MEMORY_FREE(iStandardItemModel);
}

#ifndef MYWIDGET_H_
#define MYWIDGET_H_

#include <QWidget>
class QListView;
class QStandardItemModel;

class MyWidget : public QWidget
{
public:
    MyWidget(QWidget* parent = 0);
    virtual ~MyWidget();
private:
    QListView*              iListView;
    QStandardItemModel*     iStandardItemModel;
};

#endif /* MYWIDGET_H_ */

你可能感兴趣的:(QListView 和 QStandardItemModel的使用)