Qt之QListview使用

Qt之QListview使用

一个实践项目,应用Qt写一个可以显示数据的窗口,包含一个菜单栏,有保存,清屏,关闭三个选项;一个中央组件,运用QListview显示数据。
QListview是Qt内置的模型,以列表的形式显示数据。

QStringList data;
QString str = "  test" ;
str = str.trimmed();//去除字符串前面的空格
data << str;
model = new QStringListModel(data);
view = new QListView;
view->setParent(this);
view->setModel(model);
view->setEditTriggers(QAbstractItemView::NoEditTriggers);//设置列表项不可编辑
setCentralWidget(view);//把view作为中心主窗口

https://blog.csdn.net/qter_wd007/article/details/7028920
Qt程序中的主窗口通常具有一个中心窗口部件。从理论上来讲,任何继承自QWidget的类的派生类的实例,都可以作为中心窗口部件使用。

清屏

后期功能需要对QListview进行清屏和删除一些行的操作,用到了removeRows(),和removeRow()两个函数。
函数原型

bool removeRows(int row, int count, const QModelIndex & parent = QModelIndex());
bool removeRow(int row, const QModelIndex & parent = QModelIndex())

根据上述函数写了一个清屏功能。

bool MainWindow::onScrClear(){
    int iCount=view->model()->rowCount();
	bool ret = true;
	ret = ret && view->model()->removeRows(0, iCount);
	return ret;
}

你可能感兴趣的:(学习)