QStringListModel

创建模型:

cpp 复制代码
QStringListModel* model = new QStringListModel(this);

初始化列表:

cpp 复制代码
QStringList strList;
    strList << QStringLiteral("北京") << QStringLiteral("上海") << QStringLiteral("天津") << QStringLiteral("河北") << QStringLiteral("山东") << QStringLiteral("四川") << QStringLiteral("重庆") << QStringLiteral("广东") << QStringLiteral("河南");

将列表加进模型:

cpp 复制代码
model->setStringList(strList);

为视图设置模型:

cpp 复制代码
ui.listView->setModel(model);

添加行:

cpp 复制代码
void port::on_addItem_clicked()
{
	model->insertRow(model->rowCount());
	QModelIndex index = model->index(model->rowCount() - 1,0);
	model->setData(index,"new item",Qt::DisplayRole);
	ui.listView->setCurrentIndex(index);
}

插入项:

cpp 复制代码
void port::on_insertItem_clicked()
{
	QModelIndex index;
	index = ui.listView->currentIndex();
	model->insertRow(index.row());
	model->setData(index,"inserted item",Qt::DisplayRole);
	model->setData(index,Qt::AlignRight,Qt::TextAlignmentRole);
	ui.listView->setCurrentIndex(index);
}

删除项:

cpp 复制代码
void port::on_deleteItem_clicked()
{
	QModelIndex index;
	index = ui.listView->currentIndex();
	model->removeRow(index.row());
}

清空项:

cpp 复制代码
void port::on_clearList_clicked()
{
	model->removeRows(0,model->rowCount());
}

获取模型数据:

cpp 复制代码
QStringList strList;
    strList = model->stringList();

清空文本:

cpp 复制代码
ui.plainTextEdit->clear();

将数据显示到文本上:

cpp 复制代码
for (int i = 0; i < strList.count(); i++)
        ui.plainTextEdit->appendPlainText(strList.at(i));
相关推荐
summer_west_fish4 分钟前
单体VS微服务:架构选择实战指南
java·微服务·架构
v***8576 分钟前
Ubuntu介绍、与centos的区别、基于VMware安装Ubuntu Server 22.04、配置远程连接、安装jdk+Tomcat
java·ubuntu·centos
报错小能手7 分钟前
讲讲libevent底层机制
linux·服务器
烤麻辣烫14 分钟前
黑马程序员大事件后端概览(表现效果升级版)
java·开发语言·学习·spring·intellij-idea
q***965817 分钟前
Spring总结(上)
java·spring·rpc
思密吗喽18 分钟前
宠物商城系统
java·开发语言·vue·毕业设计·springboot·课程设计·宠物
ss27341 分钟前
019:深入解析可重入互斥锁:原理、实现与线程安全实践
java·数据库·redis
luyun0202021 小时前
牛批了,某音录播神器
java·windows·figma
高级程序源1 小时前
springboot社区医疗中心预约挂号平台app-计算机毕业设计源码16750
java·vue.js·spring boot·mysql·spring·maven·mybatis
cypking1 小时前
Vue 3 + Vite + Router + Pinia + Element Plus + Monorepo + qiankun 构建企业级中后台前端框架
前端·javascript·vue.js