2

当我像下面这样使用这个功能时。

beginInsertRows()

beginInsertRows: identifier not found

我是 C++ 新手。我如何调用这个函数?我包括 QtSql。我应该包括一些特别的东西吗?

编辑:我已经搜索了解决方案,所有这些都指向使用我发布的这个功能。但我收到了这个错误。

    this->sqlModel2 = new QSqlQueryModel();
    sqlTableModel = new QSqlTableModel(this);
    sqlTableModel->setTable("mytable");
    sqlTableModel->select();

    qDebug()<< sqlTableModel->lastError().text();

    ui->listView->setModel(sqlTableModel);
    ui->listView->setModelColumn(1);



            QString name;
            name= " My name";
            QSqlQuery qryInsert;
            QString mInsert "INSERT INTO mytable (:name) VALUES (:name)";

            qryInsert.prepare(mInsert);

            qryInsert.bindValue(":name",name);
            beginInsertRows(QModelIndex(),0,1) ;
            if(qryInsert.exec()){
                      qDebug()<<"Inserted";
                      result = "inserted";


                  }else{
                      qDebug()<<"Error inserting = "<<qry.lastError().text();
                  }
             endInsertRows();
4

1 回答 1

8

beginInsertRows()是方法,QAbstractItemModel它受到保护。QAbstractItemModel因此,只有在其方法内部进行子类化时才能调用它。更多信息在这里

于 2013-10-31T12:40:07.293 回答