如何解决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的事件连起来。不过这些方法我没有试,如果哪位阅读了此文,可以去试一试。有什么结果,请回复。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值