c++ - Qt中处理 "events"

标签 c++ qt

我试图理解 Qt 中的信号和槽,但大多数 Qt gui 对象似乎都非常缺乏信号。许多对象都有“*Event”方法,您可以覆盖这些方法来处理某些事件,但是我是否必须创建一个完整的类来处理这些事件?为什么没有更多的信号,以便可以在父类中处理这些事情?

最佳答案

大多数图形界面(Windows、Linux、Mac OS)都使用事件驱动架构。这是历史上的标准做法。在编写像 Qt Gui 模块这样的多平台适配器时,使用基于事件的底层架构的共同点是有意义的。由向“子”对象传播事件组成的设计事件机制对于处理user inputs 非常强大。 (键盘、鼠标等...)。

除此之外,您可能应该看看对问题 Qt Events and Signal/Slots 的出色回复。

关于c++ - Qt中处理 "events",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25156152/

相关文章:

c++ - 如何用派生基类替换基类

c++ - 此功能的问题

c++ - eigen的cholesky是否受益于mp?

c++ - 使 getline() 读取正确的行

c++ - 奇怪的 QString 初始化为 0 - 它有什么作用?

c++ - 如何在Windows下使用cmake在qt GUI应用程序中显示控制台

c++ - 如何正确使用 std::stod

c++ - Qt : Having a single instance of QPainter object in a class

qt - QComboBox下拉列表-设置选中项样式

c++ - 将十六进制 QString 转换为 UTF-8 QString