
Qt的一个问题。
我用qmlRegisterType<View3DItem>("SimPackage",1,0,"View3DItem");注册了一个类,请问怎么得到View3DItem这...
我用qmlRegisterType<View3DItem>("SimPackage", 1, 0, "View3DItem");注册了一个类,请问怎么得到View3DItem这个类的对象,或者指针呢?
展开
1个回答
展开全部
要先兴建这个对象.
在 qml 里写
View3DItem{
id: View3Ditem
function test(){
View3Ditem.setObject(id: View3Ditem)
}
}
这个 id其实就是一个对象了..
你可以把这个对象发给 C++ ,
在 C++ 里面写一个槽函数..像什么
View3DItem::setObject(QVariant var){
QObject *obj = var.value<QObject*>();
这个obj 就是 qml 里面的对象了..
然后可以用这个 obj 来调用 qml 的各种函数,设置各种属性, 连接信号什么的..
}
在 qml 里写
View3DItem{
id: View3Ditem
function test(){
View3Ditem.setObject(id: View3Ditem)
}
}
这个 id其实就是一个对象了..
你可以把这个对象发给 C++ ,
在 C++ 里面写一个槽函数..像什么
View3DItem::setObject(QVariant var){
QObject *obj = var.value<QObject*>();
这个obj 就是 qml 里面的对象了..
然后可以用这个 obj 来调用 qml 的各种函数,设置各种属性, 连接信号什么的..
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询