Qt 数据库编程中QTableView使用方法是本文要介绍的内容,主要是来学习QT中数据库关于QTableView的使用,具体来看本文详解。
QTableView是QT中用来把数据集以表格形式提供给用户的一个控件,它与C++Builder中的DBGrid作用类似。坦白的说,DBGrid的使用要比QTableView更容易一些。但QTableView在使用麻烦的同时,也提供了更多的灵活性。
在一个药品划价模块中有这样的操作流程:
检索处方项目成功后,把该项目显示到QTableView里,把需要编辑的数量字段提供给用户输入,用户输入确认后,该项目留在列表中,然后开始下一项目检索录入。
实现过程如下:
录入的项目保留在临时表tmp中,界面上的QTableView取名为tbList,与tbList关联的Model取名为tb1。检索成功后,把检索结果插入到临时表中,把需要编辑的字段提供给用户。
- tb1=newQSqlTableModel(this,*dbR);//dbR是本应用中的数据源
- tb1->setTable("tmp");//处方临时表
程序中需要显示的时候,
- tbList->setModel(NULL);//清除原先数据集
- tbList->setModel(tb1);//刷新显示
程序中需要提供编辑输入的时候
- QModelIndexmdidx=m_ui->tbList->model()->index(row,column);//获得需要编辑的单元格的位置
- m_ui->tbList->setFocus();//把输入焦点交给tbList
- m_ui->tbList->setCurrentIndex(mdidx);//设定需要编辑的单元格
- m_ui->tbList->edit(mdidx);//开始编辑
有一个问题需要注意。向QTableView中添加记录时,字段一定要完整,不能有空白字段,否则结果无法保存。切记。
如果需要对用户输入做限制,比如只能在指定的字段输入指定的数据类型,可以通过QItemDelegate来实现。
小结:Qt数据库编程中QTableView使用方法的内容介绍完了,希望通过本文的学习能对你有所帮助!