C#中如何取消方向键对Button控件焦点的控制?
如题我已经定义了按下方向键时目标对象的行为,但是运行后,按下方向键的时候只有Button的焦点在切换,定义了键盘事件的目标对象反倒是没有任何动作,因此想找办法取消掉方向键...
如题
我已经定义了按下方向键时目标对象的行为,但是运行后,按下方向键的时候只有Button的焦点在切换,定义了键盘事件的目标对象反倒是没有任何动作,因此想找办法取消掉方向键对Button的控制
请大虾们帮帮忙,谢谢了 展开
我已经定义了按下方向键时目标对象的行为,但是运行后,按下方向键的时候只有Button的焦点在切换,定义了键盘事件的目标对象反倒是没有任何动作,因此想找办法取消掉方向键对Button的控制
请大虾们帮帮忙,谢谢了 展开
2个回答
展开全部
如果光是想Button不接受焦点,把Button的属性TabStop改成False应该可以。
但是你所说的问题最好不要这样解决,应该调整你对键盘事件响应的时机。
实在不行,可以重写WndProc函数
但是你所说的问题最好不要这样解决,应该调整你对键盘事件响应的时机。
实在不行,可以重写WndProc函数
更多追问追答
追问
把button的tabstop设置为false这个方法我昨天就试了,把所有按钮的tabstop都设置成false了还是不行;
还有落日桑你原来是学计算机的啊=w=
追答
算是吧~家里电脑没空间把VS2008卸载了,不能测试。
可以试试看这样:
1、注册Button的Focused事件,获取焦点时干些事情~
2、用容器把你要响应键盘事件的控件与Button分离开~
3、如果是窗体的话,继承Form类,重写OnKeyDown等键盘事件~
4、写WndProc函数 ~
明天工作时我试试~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询