如果把clanlib加入到已有框架中.
CL_DisplayWindow 创建时会把CL_KeepAlive::func_event_wait自动设置CL_DisplayMessageQueue_Win32::wait,
而这个wait中则会获取并派发消息.
如果CL的窗口是一个window的子窗口,这样就会导致有两个地方会派发消息导致bug.
解决方法:
1.
在创建好CL_DisplayWindow后调用
CL_KeepAlive::func_event_wait().clear();
当然这样CL_DisplayWindow窗口的消息就无法处理,要手工添加m_DisplayWnd.get_ic().process_messages()处理.
2.
取消window的消息处理,直接使用Clanlib中的消息派发机制.
不过如果是mfc程序则会导致PreTransWindowsMsg消息无效.
posted on 2010-07-02 17:45
我风 阅读(230)
评论(0) 编辑 收藏 引用 所属分类:
ClanLib