java
您现在所在的位置:首页>企业动态>java

信号和槽的关联方式_Qt技术知识讲解

编辑:学到牛牛IT培训    发布日期: 2022-12-07 11:02:27  

在QT里面信号(signal)和槽(slot)是关键所在,当对象的状态发生改变的时候,就会发射信号出去,而且对象只负责发送信号,这样就做到了真正的信息封装。槽函数则是用来接收信号,但是一个信号的签名必须和接收槽的签名相匹配。这里需要注意几点:一个信号可以连接多个槽;多个信号可以连接同一个槽;信号与信号之间也可以相互连接。


而信号和槽之间的关联方式则有一下几种:



1, Signal、slot的Edit方式;


1.png


在信号和槽的编辑区点击“加号”创建新的信号和槽的连接。


 1.png


然后选择我们信号的发送者、信号类型、接收者以及槽,通过手动的方式将信号和槽之间连接起来。



2, 通过快捷键F4、F3连接;


先通过快捷键F4或点击工具栏上的按钮进入信号和槽的编辑模模式。


3.png


然后选中信号的发送者,并指向信号的接收者,


4.png


在弹出的窗口里面选择信号类型和接收的槽,


5.png


完成连接,然后快捷键F3退出编辑模式。

 

6.png


3, 转到槽;


选中信号发送者,点击鼠标右键选择转到槽的方式


7.png


跳转到源文件界面之后,在槽函数里面写入代码,使信号和槽关联起来,

  

8.png


4, 自定义信号和槽


首先在头文件里面自定槽函数,然后跳转到源文件里面,编辑槽函数;

 

9.png


在构造函数里面添加connect将信号和槽关联起来;


10.png


在connect这个函数里面一共包括了五种参数,我们一般使用的都是前四种参数,分别是信号的发送者,信号类型,信号的接收者以及槽函数。而第五个参数则是关联的类型,一般不填,为默认值。


在自定义信号和槽里面还有一种定义方式是基于函数指针的,构造函数如下;

 

12.png


其他的操作与之前相同。


信号和槽的关联应该注意以下几点:

1. 要注意信号和槽函数的参数数量相同时,参数类型要一致;

2. 要注意当信号和槽函数的参数数量不一致的时候,只能是信号的参数数量多于槽函数的参数数量;

3. 要注意在不进行参数传递的时候,信号和槽绑定时也要求信号的参数数量多于槽函数的参数数量,也就是一个带参的信号去绑定无参的槽函数。


免费试学
课程好不好,不如实地听一听

推荐阅读

  • 计算机专业的就业难度怎么样?

    国产午夜鲁丝片AV无码蜜臀,福利免费观看午夜体检区,人妻少妇精品无码专区APP,伊人久久大香线蕉成人综合网,国产妓女在线观看视频,亚洲成a人片在线观看尤物,亚洲精品国产一二三无码AV,亚汌国产一区二区三区

  • 嵌入式软件开发学习路线

    国产午夜鲁丝片AV无码蜜臀,福利免费观看午夜体检区,人妻少妇精品无码专区APP,伊人久久大香线蕉成人综合网,国产妓女在线观看视频,亚洲成a人片在线观看尤物,亚洲精品国产一二三无码AV,亚汌国产一区二区三区

  • 为什么自学编程那么难?

    国产午夜鲁丝片AV无码蜜臀,福利免费观看午夜体检区,人妻少妇精品无码专区APP,伊人久久大香线蕉成人综合网,国产妓女在线观看视频,亚洲成a人片在线观看尤物,亚洲精品国产一二三无码AV,亚汌国产一区二区三区

  • IT培训机构出来的到底好不好就业呢?

    国产午夜鲁丝片AV无码蜜臀,福利免费观看午夜体检区,人妻少妇精品无码专区APP,伊人久久大香线蕉成人综合网,国产妓女在线观看视频,亚洲成a人片在线观看尤物,亚洲精品国产一二三无码AV,亚汌国产一区二区三区

封闭学习

2

1

18180749853

蜀ICP备2021001672号

在线咨询 免费试听VIP课程