如何解决wxFrame的key event不好使的问题。

    用wxWidgets做个程序,弄了一上午,那个wxFrame上的KeyDown事件怎么也不响应。后来找来wxWidgets本身的一个简单例 子,一个wxFrame,一个wxButton,当然,还有一个KeyDown事件。说来也奇怪,当我的焦点在button上时,wxFrame上的 KeyDown就好使了,而不在button上时,就不好使了,不知道wxFrame的源码是怎么写的。
    郁闷了好久、不过后来在国外的一个专门讨论wxWidgets的forum上找到了答案,说wxFrame的key事件是有些不太好使,要想使 wxFrame上的key事件好使,就在wxFrame上放一个wxPanel,使用wxPanel的key事件就可以了。在wxPanel的key事件 调用wxFrame中的key事件。

如在wxPanel中的keydown事件代码

OnKeyDown(wxKeyEvent& event)
{
    ((wxFrame
*)GetParent())->OnKeyDown(event);
}

 

    据说还有别的方法,比如用Connect方法将所有的子控件的事件和wxFrame的事件连起来。不过这些方法我没有试,如果哪位阅读了此文,可以去试一试。有什么结果,请回复。

posted on 2008-05-16 19:39 银河使者 阅读(36) 评论(0)  编辑 收藏 所属分类: C/C++open source 原创


标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-05-22 17:07 编辑过
 
另存  打印
最新IT新闻:
· 万名Linux使用者向暴雪请愿Linux版《Diablo III》
· 56.com我乐网将全面转行 退出视频行业
· Joost借道TOM在线 将正式进军中国
· 微软副总裁公开承认Vista存在问题
· 互联网DNS存在重大漏洞 黑客可能控制网络流量
 


<2008年5月>
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

导航

统计

公告

与我联系

常用链接

留言簿(3)

我参与的团队

我的标签

随笔分类(91)

随笔档案(47)

相册

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜

60天内阅读排行