QStringListModel的简单使用

长平狐 发布于 2013/01/11 10:33
阅读 70
收藏 1

QStringListModel是QT中的一个预定义模型,它存储一个字符串列表。

我们先看一下代码:

 

#include <QApplication>
#include <QtGui>
int main(int argc, char** argv)
{
	QApplication app(argc, argv);
	QWidget* widget = new QWidget;
	QHBoxLayout* layout = new QHBoxLayout;
	QStringListModel* listModel = new QStringListModel;
	QListView* listView = new QListView;
	QStringList  nameList;
	nameList<<"ZheDong Mao"<<"RenLai Zhou"<<"XiaoPing Deng"<<"ShaoQi Liu"<<"De Zhu"<<"DeHuai Peng";
	listModel->setStringList(nameList);
	listView->setModel(listModel);
	listView->setEditTriggers(QAbstractItemView::AnyKeyPressed | QAbstractItemView::DoubleClicked);
	layout->addWidget(listView);
	widget->setWindowTitle("QStringListModel");
	widget->setLayout(layout);
	widget->show();
	return app.exec();
}

 

我们这里使用了一个QListView来和 QStringListModel进行连接,这样 QStringListModel的内容就会在QListView中显示出来,任何对 QStringListModel的修改都会显示在QListView中。这样我们就可以达到数据存储和显示的分离,我们可以专注我们的数据部分( QStringListModel,只要我们定义好接口),显示的部分就由QListView去负责,这就是QT的MVC(Model-View-Controller)机制,在MFC里也就是document和view。

 

下面是运行的图片:

 



在代码中,我们通过定义双击的形式来修改字符串,我们可以点击项,这样就可以修改它。

 


原文链接:http://blog.csdn.net/fjb2080/article/details/4924791
加载中
返回顶部
顶部