Qt之QListview使用
程序员文章站
2022-03-02 10:33:00
...
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;
}