c++ - 如何在 QSqlTableModel 和 Q_OBJECT 之间不发生冲突的情况下构建我的类?

标签 c++ qt qml

我正在尝试构建下一个代码,但编译器说:

"sqltablemodel.h:12: error: undefined reference to `vtable for SqlTableModel'"

我了解到QSqlTableModel之前已经有Q_OBJECT了。

但是在删除这个宏之后,我无法从 QML 调用我的函数。

调试器说:ajax 不是函数。

如何在继承和宏之间不发生冲突的情况下构建我的类?

 //sqltablemodel.h
class SqlTableModel : public QSqlTableModel {
       Q_OBJECT
    public:    
       Q_INVOKABLE void ajax(){
           qDebug() << "123";
       }
    }

    //main.cpp
     SqlTableModel *sqlTableModel =  new SqlTableModel();
        context->setContextProperty("sqlTableModel", sqlTableModel);

最佳答案

我找到了一个解决方案,当使用 Qt Creator 时:

构建 → 运行 qmake

构建 → 全部重建

关于c++ - 如何在 QSqlTableModel 和 Q_OBJECT 之间不发生冲突的情况下构建我的类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53467455/

相关文章:

保存时更改Qt Creator缩进

c++ - 在 TStringList 中添加对象

c++ - OpenGL 改变/重新加载纹理

c++ - friend 类不能调用私有(private)构造函数

c++ - Qt 中的 PCL addLine 使应用程序崩溃

c++ - QML listview读取当前和触摸区域

c++ - BlackBerry 10 QML 应用程序在数据源加载时崩溃

c++ - Qt QML 数据模型似乎不适用于 C++

c++ - 如何在 C++ 中有效地生成排序的均匀分布的随机数?

c++ - NSIS:ExecWait 如何处理否则会崩溃的 exe