1、首先我们创建一个quick工程,然后默认下一步即可,记得在选择ui.qml的时候去勾选就行了。
2、然后我们的项目就创建好了,目录结构如下图。这里我们注意一下,自动生成的main.cpp文件我们需要重命名一下,这个随意改就行,不是main即可,因为待会我们是把整个类的定义和main函数放在一起的,所以这里需要改个文件名,具体原因请查看我的另一篇文章吧。
3、接下来我们既然要在Qt C++里面连接qml中的信号,这里就必须得有一个槽函数了。所以我们先定义一个类,继承自QQmlApplicationEngine,这里继承这个类是因为只有这个类才是瑕铆幌约加载qml组件的类,就是说它可以获取QML组件中的相关信息属性值。
4、然后我们在这个类中定义一个槽函数用来和qml组件中的信号进行连接的。同样道理,我们在main.qml文件中定义一个信号。并在点击qml MouseArea区域的时候调用
5、然后就是进行连接了,这里我们在main函数里进行连接,这里我们需要定义一个QWindow变量,使用这个变量来和qml中的window进行交互,如果你的qml里面是Item,那么你就应该使用QQuickItem变量了。
6、最终结果如下图,我们在槽函数中打印的语句出现在了调试控制台中了。当然了,你还可以变通一下使用widget来传值的哦。