我是靠谱客的博主 怕孤单裙子,最近开发中收集的这篇文章主要介绍wxWidgets事件(Event)处理(一),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

处理函数介绍

看源代码include/wx/event.h中如下代码:
class WXDLLIMPEXP_BASE wxEvtHandler : public wxObject
{
..........................................

// 立即处理一个事件
virtual bool ProcessEvent(wxEvent& event);

// 添加一个事件到待处理队列
void AddPendingEvent(wxEvent& event);

....................................
}

// 添加一个事件到对应句柄的待处理队列,在下次事件循环迭代后处理该事件
inline void wxPostEvent(wxEvtHandler *dest, wxEvent& event)
{
wxCHECK_RET( dest, wxT("need an object to post event to in wxPostEvent") );

dest->AddPendingEvent(event);
}

以上代码说明了wxwidgets的两个重要事件处理函数ProcessEvent和wxPostEvent,我们可以这样理解:
ProcessEvent是同步处理一个事件,只有该事件被处理完才结束;
wxPostEvent是异步处理一个事件,该函数仅仅将事件加入到对应事件句柄的事件待处理队列,不等事件被处理就直接返回。
所以在不同的使用环境中我们要妥善使用这两个函数,尤其在多线程和UI编程(如容易引起界面阻塞的操作)环境下!

转载于:https://my.oschina.net/u/2332347/blog/637842

最后

以上就是怕孤单裙子为你收集整理的wxWidgets事件(Event)处理(一)的全部内容,希望文章能够帮你解决wxWidgets事件(Event)处理(一)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部