• 10269阅读
  • 9回复

QT操作SQLITE数据库(二) [复制链接]

上一主题 下一主题
离线wvins
 
只看楼主 倒序阅读 楼主  发表于: 2008-09-25
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
源代码 8.SQLTableModel.rar (425 K) 下载次数:289 经过一番折腾我的操作SQLite数据库并显示到QTableView中的Demo写完了.

只是这个过程中有太多的疑惑,希望能够有高手指点!!
1. 如何操作大字段,我看到了QT4.4.1有个QVariant类型,我想大概和这有关吧,还没有具体去操作.
2.一并提出来吧,QTreeView和QTableView怎么自定义节点或者单元格的颜色,树的节点能不能实现 AAAA(100)这样的效果.
-------------
OK,下面展现我是怎么把数据显示到QTableView中的
先用QTDesigner画个简单的UI,见附件
主程序Main.cpp代码如下:
#include <QApplication>
#include <QSqlDatabase>
#include <QMessageBox>
#include <QTextcodec>
#include <QSqlQuery>
#include <QSqlQueryModel>
#include <QVariant>
#include "ui_uiTableModel.h"

int main(int argc, char *argv[])
{
    QTextCodec::setCodecForTr(QTextCodec::codecForName("GB2312"));
    QApplication app(argc, argv);
    QDialog * dialog = new QDialog;
    Ui_Dialog mydialog;
    mydialog.setupUi(dialog);
    dialog->show();
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
    db.setDatabaseName("aaaa");
    if ( !db.open())
      {
        QMessageBox::critical(NULL, QObject::tr("Collection"), QObject::tr("数据库连接失败!"));
        return 0;
      }
    QSqlQueryModel query;
    query.setQuery("select * from x");
    mydialog.tableView->setModel(&query);
    return app.exec();
}
//老实说,QT的Model,View模式我理解的还不是很清晰.
本来打算使用QTableWidget类的,可是他私有化了setModel函数.

离线tommyandone
只看该作者 1楼 发表于: 2008-10-25
为什么我的QT4不能使用QSQL中的函数
头文件我也加了,相关的什么都找不到
离线6楼男生
只看该作者 2楼 发表于: 2009-03-11
thank you for your share
离线wd007

只看该作者 3楼 发表于: 2009-03-11
谢谢分享经验
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线cnnbboy

只看该作者 4楼 发表于: 2009-03-12
感觉很有用,学习下
离线ren0065
只看该作者 5楼 发表于: 2009-03-16
啊里阿道,库大一马斯
离线a263238386
只看该作者 6楼 发表于: 2009-08-05
楼主大好人。。。。
离线andyliang

只看该作者 7楼 发表于: 2009-12-25
怎么设置单元格背景颜色,不是选中的单元格的颜色
离线zuoyi

只看该作者 8楼 发表于: 2010-04-05
支持!
学习Qt技术...
离线ortejia

只看该作者 9楼 发表于: 2010-04-06
应该不会有数据库连接失败的情况,不存在的话会自动创建吧
快速回复
限100 字节
 
上一个 下一个