本文介绍: QSqlQueryModel、 QSqlTableModel、 QSqlRelationalTableModel:数据库相关模型;操作(当前项切换、当前行切换、选择行变化时=)要使用“选择模型”对象 发送信号)。因此,引入了“选择模型”!QStringListModel:存储QString项目的列表模型;QFileSystemModel:本地文件系统中的文件和目录模型;当既有“数据模型”,又有“选择模型”的时候。二、然而,正常情况下:“视图”都需要进行。模型(这里是数据模型!

                        

                                

一、“使用视图”一般的步骤:

//1.创建 模型(这里是数据模型!) tabModel=new QSqlTableModel(this,DB);//数据表

//2.设置 视图模型(这里是数据模型!) ui->tableView->setModel(tabModel);

模型种类:

QStringListModel:存储QString项目的列表模型;

QStandardItemModel:列表表格数模型;

QFileSystemModel:本地文件系统中的文件和目录模型;

QSqlQueryModel、 QSqlTableModel、 QSqlRelationalTableModel:数据库相关模型;

QItemSelectionMode:选择模型;

二、然而,正常情况下:“视图”都需要进行“选择”操作(当前项切换、当前行切换、选择行变化时=> 要使用“选择模型”对象 发送信号)。因此,引入了“选择模型”!

//2.创建 选择模型 theSelection=new QItemSelectionModel(tabModel);

//3.设置视图的选择模型 ui->tableView->setSelectionModel(theSelection);

//4.选择行变化时,theSelection发送currentRowChanged信号

connect(theSelection, SIGNAL(currentRowChanged(QModelIndex,QModelIndex)),

            this,SLOT(on_currentRowChanged(QModelIndex,QModelIndex)));

三、注意:

当既有“数据模型”,又有“选择模型”的时候。设置“模型”setModel,必须放到 设置“选择模型setSelectionModel函数“之前”

=》因为setModel函数会删除之前设置的“选择模型”!

1.ui->tableView->setModel(tabModel);//设置视图的 数据模型

2.ui->tableView->setSelectionModel(theSelection); //设置视图的 选择模型

原文地址:https://blog.csdn.net/zxf347085420/article/details/135473778

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_54056.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注