C++ 如何将开关Qml添加到qt小部件?
C++ 如何将开关Qml添加到qt小部件?,c++,qt,qml,qt5,qquickwidget,C++,Qt,Qml,Qt5,Qquickwidget,我有一个qml文件ToggleSwitch.qml,我想将它导入我的小部件。基本上,我想将qml与widget集成
切换开关.qml
Switch
{
checked:true
}
QQuickWidget *quickWidget = new QQuickWidget;
quickWidget->setSource(QUrl("qrc:/Resources/ToggleSwitch.qml"));
QVBoxLayout *vBox = new QVBo
我有一个qml文件ToggleSwitch.qml
,我想将它导入我的小部件。基本上,我想将qml与widget集成
切换开关.qml
Switch
{
checked:true
}
QQuickWidget *quickWidget = new QQuickWidget;
quickWidget->setSource(QUrl("qrc:/Resources/ToggleSwitch.qml"));
QVBoxLayout *vBox = new QVBoxLayout;
vBox->addWidget(quickWidget);
在main window.cpp
中,我想做类似的事情
main window.cpp
Switch
{
checked:true
}
QQuickWidget *quickWidget = new QQuickWidget;
quickWidget->setSource(QUrl("qrc:/Resources/ToggleSwitch.qml"));
QVBoxLayout *vBox = new QVBoxLayout;
vBox->addWidget(quickWidget);
我试过上面的代码,但不起作用。它抛出错误未解析的外部符号要使用QQuickWidget
您必须添加模块quickwidgets
,将以下内容添加到.pro中:
QT += quickwidgets
另外,不要忘记包含标题:
#include <QQuickWidget>
#包括
如果您在windows中,则必须使用windowdeployqt获取执行应用程序所需的所有DLL,更多信息请访问以下链接:
要使用QQuickWidget
您必须添加模块quickwidgets
,将以下内容添加到.pro:
QT += quickwidgets
另外,不要忘记包含标题:
#include <QQuickWidget>
#包括
如果您在windows中,则必须使用windowdeployqt获取执行应用程序所需的所有DLL,更多信息请访问以下链接:
Error Mainwindow.obj:Error LNK2019:未解析的外部符号“\u declspec(dllimport)public:virtual\u cdecl QQuickWidget::~QQuickWidget(void)”(\u imp??1QQuickWidget@@UEAA@XZ)函数“public:virtual void*u cdecl QQuickWidget::`scalar deleting destructor'(unsigned int)”(??\u GQQuickWidget)中引用@@UEAAPEAXI@Z).qml位于资源文件夹QT+=核心gui qml quick greaterThan(QT_MAJOR_版本,4):QT+=widgets TARGET=Sample TEMPLATE=app DEFINES+=QT\u DEPRECATED\u WARNINGS\DEFINES+=QT\u DISABLE\u DEPRECATED\u BEFORE=0x060000 SOURCES+=\main.cpp\mainwindow.cpp HEADERS+=\mainwindow.h FORMS+=\mainwindow.ui RESOURCES+=\RESOURCES.qrcy您应该找到解决方案基于错误消息。错误Mainwindow.obj:错误LNK2019:未解析的外部符号“\u declspec(dllimport)public:virtual\u cdecl QQuickWidget::~QQuickWidget(void)”(\u imp??1QQuickWidget@@UEAA@XZ)函数“public:virtual void*u cdecl QQuickWidget::`scalar deleting destructor'(unsigned int)”(??\u GQQuickWidget)中引用@@UEAAPEAXI@Z).qml位于资源文件夹QT+=核心gui qml quick greaterThan(QT_MAJOR_版本,4):QT+=widgets TARGET=Sample TEMPLATE=app DEFINES+=QT\u DEPRECATED\u WARNINGS\DEFINES+=QT\u DISABLE\u DEPRECATED\u BEFORE=0x060000 SOURCES+=\main.cpp\mainwindow.cpp HEADERS+=\mainwindow.h FORMS+=\mainwindow.ui RESOURCES+=\RESOURCES.qrcy您应该找到解决方案基于错误消息。添加了,但在qml中我无法导入QtQuick.Controls。它提示我添加QML_导入_PATH@Rubina你的Qt版本是什么?我使用的是Qt5.9。4@Rubina重新安装Qt,当然该属性未正确建立。仍然获取错误文件未找到未解决的外部错误我尝试在不同的PCAdd中获取错误,但在qml中我无法导入QtQuick.Controls。它提示我添加QML_导入_PATH@Rubina你的Qt版本是什么?我使用的是Qt5.9。4@Rubina重新安装Qt,当然该属性未正确建立。仍然获取错误文件未找到未解决的外部错误我在不同的pc中尝试时获取的错误