如何在Qt QML中连接带参数的信号

 时间:2024-10-14 22:56:48

1、首先我们创建一个quick工程,然后默认下一步即可,记得在选择ui.qml的时候去勾选就行了。

如何在Qt QML中连接带参数的信号
如何在Qt QML中连接带参数的信号

2、然后我们的项目就创建好了,目录结构如下图。这里我们注意一下,自动生成的main.cpp文件我们需要重命名一下,这个随意改就行,不是main即可,因为待会我们是把整个类的定义和main函数放在一起的,所以这里需要改个文件名,具体原因请查看我的另一篇文章吧。

如何在Qt QML中连接带参数的信号

3、接下来我们既然要在Qt C++里面连接qml中的信号,这里就必须得有一个槽函数了。所以我们先定义一个类,继承自QQmlApplicationEngine,这里继承这个类是因为只有这个类才是瑕铆幌约加载qml组件的类,就是说它可以获取QML组件中的相关信息属性值。

如何在Qt QML中连接带参数的信号

4、然后我们在这个类中定义一个槽函数用来和qml组件中的信号进行连接的。同样道理,我们在main.qml文件中定义一个信号。并在点击qml MouseArea区域的时候调用

如何在Qt QML中连接带参数的信号
如何在Qt QML中连接带参数的信号

5、然后就是进行连接了,这里我们在main函数里进行连接,这里我们需要定义一个QWindow变量,使用这个变量来和qml中的window进行交互,如果你的qml里面是Item,那么你就应该使用QQuickItem变量了。

如何在Qt QML中连接带参数的信号

6、最终结果如下图,我们在槽函数中打印的语句出现在了调试控制台中了。当然了,你还可以变通一下使用widget来传值的哦。

如何在Qt QML中连接带参数的信号
  • HBuilderX如何显示行号
  • windows10 语言栏设置添加
  • 手机迅雷怎么关闭个性化内容推荐
  • 直线模组中的噪音是如何造成的?
  • 有技能者,如何兼职挣钱?
  • 热门搜索
    抗击病毒手抄报 关于春节的英语手抄报 植物园手抄报 民俗手抄报 节俭手抄报 关于长城的手抄报 2035年的家乡手抄报 八一建军节手抄报 2035年的我手抄报 关于廉洁的手抄报