qt5下用c++实现qml窗体解决办法
qt5下用c++实现qml窗体
我之前有个qt4的项目,我想迁移成qt5的。其中有一个是用c++实现的一个类,在qml中引用。这是一个窗体对象。我的实现方式如下:
class QrcodeView : public QGraphicsProxyWidget
{
......
}
但是我在迁移到qt5时,QGraphicsProxyWidget已经不能用了。
请问qt5下用c++写qml调用的窗体,需要继承什么类呢?
注意是可视化窗体,不只是Object的子对象。
------解决思路----------------------
Qt5不能在QML中嵌入QWidget,但是可以用5.3出的新类QQuickWidget在QWidget中嵌入QML。
------解决思路----------------------
Qt 4 和 Qt 5,QML的底层引擎都变了,4的代码拿过来用不了了。
在 5 里,QQuickWindow,QQuickView可以用。如果要实现一个 Item,可以继承QQuickItem之类的类。
------解决思路----------------------
QGraphicsProxyWidget
在Qt 5中应该对应的是QQuickItem。当然作为妥协,窗体的部分是缺失了的。
我之前有个qt4的项目,我想迁移成qt5的。其中有一个是用c++实现的一个类,在qml中引用。这是一个窗体对象。我的实现方式如下:
class QrcodeView : public QGraphicsProxyWidget
{
......
}
但是我在迁移到qt5时,QGraphicsProxyWidget已经不能用了。
请问qt5下用c++写qml调用的窗体,需要继承什么类呢?
注意是可视化窗体,不只是Object的子对象。
------解决思路----------------------
Qt5不能在QML中嵌入QWidget,但是可以用5.3出的新类QQuickWidget在QWidget中嵌入QML。
------解决思路----------------------
Qt 4 和 Qt 5,QML的底层引擎都变了,4的代码拿过来用不了了。
在 5 里,QQuickWindow,QQuickView可以用。如果要实现一个 Item,可以继承QQuickItem之类的类。
------解决思路----------------------
QGraphicsProxyWidget
在Qt 5中应该对应的是QQuickItem。当然作为妥协,窗体的部分是缺失了的。