c+中的Qt3d输入+; 可以在C++中处理QT3D中的鼠标输入吗?我能够使用qtl和qt3d repo中的一个样本来实现这一点

c+中的Qt3d输入+; 可以在C++中处理QT3D中的鼠标输入吗?我能够使用qtl和qt3d repo中的一个样本来实现这一点,c++,qt,qt3d,C++,Qt,Qt3d,但这不是一个C++等价物。 尽管很多尝试(甚至尝试使用附加到各种控件的事件过滤器捕获输入),但我根本无法在C++中捕获鼠标事件。QT3D的C++输入API是否适用于QT(5.6)的版本,还是应该等待版本5.7?< P>尽管这是一个老问题,但如果有人需要,我会提供答案。 首先,总是有一个等价的C++到QML。这是因为QML只是实例化C++类。 在本例中,根据,类被实例化 查看您提供的回购协议中的其余代码,您必须创建QMouseController,作为QEntity的子项(或者不创建,我认为在将其

但这不是一个C++等价物。


尽管很多尝试(甚至尝试使用附加到各种控件的事件过滤器捕获输入),但我根本无法在C++中捕获鼠标事件。QT3D的C++输入API是否适用于QT(5.6)的版本,还是应该等待版本5.7?

< P>尽管这是一个老问题,但如果有人需要,我会提供答案。 首先,总是有一个等价的C++到QML。这是因为QML只是实例化C++类。 在本例中,根据,类被实例化

查看您提供的回购协议中的其余代码,您必须创建
QMouseController
,作为
QEntity
的子项(或者不创建,我认为在将其设置为组件时,父项也将相应地设置),并将其作为组件添加到所述实体中

QML代码中的
属性MouseInput MouseInput
仅将其作为属性添加到实体中(我假设)。您也可以省略将其作为属性添加,而是为其指定一个ID(在
鼠标输入
块内),并使用此ID将其添加到实体中,即

Entity {
    id: sphere1

    MouseInput {
        id: mouseInput

        controller: mouseController
    }

    components: [mouseInput]
}

这就是你想要的吗?
cd-qt3d;grep-nr-e QMouseInput
仅给出
src/input/frontend/qmousedevice.h:53:QMouseInput类