如何在QTableView中显示SQL查询结果

如何在QTableView中显示SQL查询结果,第1张

QVariant headerData ( int section,Qt::Orientation orientation, int role = Qt::DisplayRole ) const 获取水平头或垂直头标题

bool setHeaderData ( int section,Qt::Orientation orientation, const QVariant & value, int role = Qt::EditRole ) 设置水平头或垂直头标题

int rowCount ( const QModelIndex & parent= QModelIndex() ) const // 返回行数

int columnCount ( const QModelIndex &index = QModelIndex() ) const // 返回列数

virtual bool removeColumns ( int column, int count, const QModelIndex & parent = QModelIndex() ) //model->removeColumns (0)删除第一列

bool QSqlTableModel::submitAll (),//提交所有被修改的数据,然后修改的数据被保存在数据库中

void QSqlTableModel::revertAll () //撤销所有的修改,如果数据库已经被提交了修改,就不能通过撤销修改改回来了

virtual void revertRow ( int row ) //恢复指定行的改变

void QSqlTableModel::setFilter ( const QString & filter ) //筛选,按照字符串filter对数据库进行筛选,相当于SQL中的WHERE语句

bool QSqlTableModel::select () //在筛选和排序的条件下,将数据库中符合要求的在mode表格中显示出来

void QSqlTableModel::setSort ( int column, Qt::SortOrder order ) //排序 *** 作。按照列和Qt::SortOrder排序。Qt::SortOrder有升序和降序

bool insertRow ( int row, const QModelIndex & parent = QModelIndex() ) //插入行

bool insertColumn ( int column, constQModelIndex & parent = QModelIndex() ) // 插入列

model->setEditStrategy(QSqlTableModel::OnManualSubmit); //设置保存策略为手动提交

QT的QTableView是基于Model/View架构的,这种设计并没有包含一个完整而独立的组件用于管理用户的交互。一般来说,view仅仅是用作对model数据的展示和对用户输入的处理,而不应该去做其他的工作。在这种结构中,为了获得对用户输入控制的灵活性,这种交互工作交给了delegate,也就是“委托”。

而QT对QTableView的委托QStyleItemDelegate是不支持换行功能的,即使手动加上\r\n,在Table里显示的也只是一个空格。

说到这里,相信你也该猜到了,方法是自定义委托,继承QStyleItemDelegate,在paint函数里面,drawText的时候,用QTextOption设置换行。

我用自己账号回答被判违规了,不能给你追问了不好意思

connect(treeWidget,SIGNAL(doubleClicked(QModelIndex)),this,SLOT(str(QModelIndex)));

void ShowVideo::str(QModelIndex idx)

{

qDebug()<<idxdata()toString();

}

这样就可以获取到点击到的值了,现在可以在Str里处理了。

QTableWidget是QT对话框设计中常用的显示数据表格的控件

学习QTableWidget就要首先看看QTableView控件(控件也是有”家世“的!就像研究人一样一样的),因为QTableWidget继承于类QTableView。

两者主要区别是QTableView可以使用自定义的数据模型来显示内容(也就意味着使用时先要通过setModel来绑定数据源),而QTableWidget则只能使用标准的数据模型

以上就是关于如何在QTableView中显示SQL查询结果全部的内容,包括:如何在QTableView中显示SQL查询结果、windows下用qt实现qtableview中内容自动换行、如何实现QTreeView和QTableView数据联动等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9556234.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存