qt - Qt中事件和信号有什么区别

标签 qt events signals

我很难理解 Qt 中信号和事件之间的区别,有人可以解释一下吗?

最佳答案

事件是封装在类 (QEvent) 中的消息,它在事件循环中进行处理并分派(dispatch)给接收者,该接收者可以接受消息或将其传递给其他人进行处理。它们通常是为了响应鼠标单击等外部系统事件而创建的。

信号和槽QObject相互通信的一种便捷方式,更类似于回调函数。在大多数情况下,当发出“信号”时,会直接调用与其连接的任何槽函数。异常(exception)情况是信号和槽跨越线程边界。在这种情况下,信号本质上将被转换为事件。

关于qt - Qt中事件和信号有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9323888/

相关文章:

c++ - QNetworkReply 不触发

delphi - 无法访问底层事件字段

c - 如何使信号处理程序只运行一次并终止所有进程?

c++ - 多线程进程中的信号处理

c++ - Qt 如何使用组合框选择更新 GUI QFrame

c++ - 在 Qt 中获取本地 IP 地址

c++ - '{' 标记之前的预期类名

java - 雷击事件处理

javascript - 谷歌地图 v3 : How to tell when an ImageMapType overlay's tiles are finished loading?

c++ - 如果我收到信号,我的程序的退出代码应该是什么?