Qt中默认控件的自定义事件

C++ Custom event for default controls in Qt

本文关键字:自定义 事件 控件 默认 Qt      更新时间:2023-10-16

是否可以编写自定义事件反应并将其添加到默认控件中,如QLineEdit ?我有自己的QSplashScreen与几个控件,如QLabel, QLineEdit或QPushButton。对于其中一个,我需要为mousePressEvent定制反应。怎么做呢?我不想创建新的MyQLineEdit继承QLineEdit,我只想覆盖默认的事件功能。

您可以使用installEventFilter() +实现eventFilter(),参见Qt文档中的示例。而不是MainWindow,将有你自定义SplashScreen

您可以为QLineEdit安装一个事件过滤器。有关详细信息,请参阅事件过滤器