我正在尝试在QML文件中使用共享库。一切似乎都很好,但是当我编译时,我得到了这个错误:
错误:'QObject'是'Player'无法访问的基础
如果有人能帮助我,我真的很感激。感谢。
这是共享库的代码:
player.h
class PLAYERSHARED_EXPORT Player : QObject
{
Q_OBJECT
Q_PROPERTY(QString name READ getName WRITE setName NOTIFY nameChanged)
QString name;
Q_PROPERTY(QString id READ getId WRITE setId NOTIFY idChanged)
QString id;
public:
Player(QString name);
const QString getName();
void setName(const QString name);
const QString getId();
void setId(const QString id);
signals:
void nameChanged();
void idChanged();
};
和.pro
文件:
TEMPLATE = app
QT += qml quick widgets
SOURCES += main.cpp
RESOURCES += qml.qrc \
resources.qrc
QML_IMPORT_PATH =
include(deployment.pri)
OTHER_FILES +=
unix|win32: LIBS += -L$$PWD/dlls/ -lplayer
INCLUDEPATH += $$PWD/dlls
DEPENDPATH += $$PWD/dlls
答案 0 :(得分:2)
您已声明私有class PLAYERSHARED_EXPORT Player : public QObject
继承。改为:
1 file changed, 1 insertion(+), 1 deletion(-)
2 files changed, 10 insertions(+), 10 deletions(-)
1 file changed, 1 insertion(+)
1 file changed, 2 deletions(-)