我用QT4.7 SDK,在QT C++示例的SQL中找到一个示例可以制作数据表,但是运行后结果显示:两张View表是一样的内容。
主要代码如下:
void initializeModel(QSqlTableModel *model1)
{ model1->setTable("qiyu");
model1->setEditStrategy(QSqlTableModel::OnManualSubmit);
model1->select();}
QTableView *createView(QSqlTableModel *model1,const QString &title = "")
{ QTableView *view1 = new QTableView; view1->setModel(model1);
#if defined(Q_OS_SYMBIAN) || defined(Q_WS_MAEMO_5) || defined(Q_WS_SIMULATOR) Q_UNUSED(title)
#else view1->setWindowTitle(title);
#endif return view1;}
int main(int argc, char *argv[]){ QSqlTableModel model1;
initializeModel(&model1);
#if defined(Q_OS_SYMBIAN) || defined(Q_WS_MAEMO_5) || defined(Q_WS_SIMULATOR)
QTabWidget *tabWidget = new QTabWidget;
tabWidget->addTab(createView(&model1), "View 1");
tabWidget->addTab(createView(&model1), "View 2");
tabWidget->showMaximized();
#endif return app.exec();}
我试过再用void initializeModel(QSqlTableModel *model1)做了model2,在函数中用model1->setTable("TEST");但是结果中还是两个view同一张表,但是表换成了TEST表,估计是我建model2后model1的值就被覆盖了。那我怎么才能让两个view显示不同的表呢?需要改哪些地方?这个东西还有点急,求牛人指点一二啊~~~