之前用qt4接收windows消息的时候,重写winEvent函数即可
qt5取消了winEvent改为nativeEvent,但是这里有个坑,就是nativeEvent在qwidget.h中的定义有一个宏判断版本,qt6和qt5的定义是不一样的
如果在qt5上使用了qt6的定义,那是接收不到消息的
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
virtual bool nativeEvent(const QByteArray &eventType, void *message, qintptr *result);
#else
virtual bool nativeEvent(const QByteArray &eventType, void *message, long *result);
#endif