MouseArea {
anchors.fill: parent
hoverEnabled: true
acceptedButtons: Qt.LeftButton | Qt.RightButton
onEntered: Function.call(somefunc())
onExited: console.log("Mouse Exited");
onClicked: {
Qt.quit();
}
}
当我的鼠标进入鼠标区域时,如何使用somefunc()函数创建一个新窗口。可能吗?
我找不到任何方法将C ++文件集成到Qt中,以便我可以使用该函数创建一个新窗口。
答案 0 :(得分:1)
是的,有可能达到你想要的效果。 C ++和QML可以在某些方面协同工作,但没有一个(据我所知)涉及将C ++代码嵌入到QML代码中。 在继续之前,我建议你问自己以下几点:
somefunc()
,这是一种可以在QML文件中使用的语言。答案 1 :(得分:0)
甚至可以从Qml或C ++创建一个新窗口,但在Qml中最简单,你可以声明包含qml元素的Component元素(如何显示弹出窗口,但窗口的功能非常有限)或者创建一个窗口元素,请阅读:
How can I create a new window from within QML?
而且:http://qt-project.org/doc/qt-4.8/qdeclarativedynamicobjects.html,也许这可以提供帮助。