qt信号发送间隔短而槽耗时多_Qt 信号和槽机制详解

信号和槽是 Qt 独有的一种机制,他让窗口的各种消息处理简化到极致,常规情况下我们相应某窗口(控件)的点击时都需要自己投递消息到框架中,由框架的消息队列投递给不同的窗口消息处理函数来处理。如果使用信号和槽,需要声明信号、定义槽函数、绑定信号和槽、发射信号就可以完成上述功能,代码简单容易理解,逻辑简单易懂。信号和槽的大致实现图如下:

qt信号发送间隔短而槽耗时多_Qt 信号和槽机制详解_第1张图片

【信号和槽使用规则和注意事项】

定义信号和槽:

信号和槽机制,是Qt的拓展,使程序员可以决定信号函数的调用目标

信号和槽只有Qt对象才能拥有(QObject类或QObject的子类才能定义信号和槽函数)

定义了信号和槽的Qt类,必须以 Q_OBJECT 宏开始,其内部是初始化信号和槽的环境

信号函数,定义在类的 signal 标识符保留字下,是Qt内部自己封装的功能,只有Qt Creator才识别,其他环境是不识别的,并且信号函数不需要实现,只需定义

槽函数,定义在类的 slot 标识符保留字下,也一样是Qt内部自己封装的,槽函数必须要实现

连接和调用:

连接信号和槽,使用 Object 类或 Object 子类的静态成员函数 connect 来连接信号和槽

发射(调用)信号函数,要使用 emit 保留字,emit 同样是Qt内部自己封装的,

你可能感兴趣的:(qt信号发送间隔短而槽耗时多)