我是靠谱客的博主 单纯果汁,这篇文章主要介绍QT 发送自定义事件(一),现在分享给大家,希望可以做个参考。

发送自定义事件前应该了解一下如何发送系统预定义的事件

 

Qt 中可以在程序中自主发送事件

-- 阻塞型事件发送

        事件发送后需要等待事件处理完成

-- 非阻塞型事件发送

        事件发送后立即返回

        事件被发送到事件队列中等待处理

 

QApplication 类提供了支持事件发送的静态成员函数

-- 阻塞型发送函数:

        [static] bool QCoreApplication::sendEvent(QObject *receiver, QEvent *event)

-- 非阻塞型发送函数:

        [static] void QCoreApplication::postEvent(QObject *receiver, QEvent *event, int priority = Qt::NormalEventPriority)

 

注意事项

-- sendEvent 中事件对象的生命周期由 Qt 程序管理

        同时支持栈事件对象和堆事件对象的发送

-- postEvent 中事件对象的生命周期由 Qt平台管理

        只能发送堆事件对象

        事件被处理后由 Qt 平台销毁

 

消息发送过程可以理解成:在 sendEvent() 函数内部直接调用 Qt 对象的 event() 事件处理函数。

最后

以上就是单纯果汁最近收集整理的关于QT 发送自定义事件(一)的全部内容,更多相关QT内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部