如图所示,本来只做了了个左边的游戏,用上下左右键控制那个黑色dart vader方向,然后Q键darth vader发子弹。
然后我在右边加了个panel,上面加了个播放器和播放列表。在运行程序,上下左右键和Q键全部不管用了倒是右边的播放器能用。然后我把右边这些都删了,在运行,那几个键又都可以了。。
键盘我是用e.keycode...key.up,key.down...这些控制的谁知道这是怎么冲突的啊?是不是需要在property里面设置一下啊谢谢非常感谢!!!!!THANK YOU SO MUCH
然后我在右边加了个panel,上面加了个播放器和播放列表。在运行程序,上下左右键和Q键全部不管用了倒是右边的播放器能用。然后我把右边这些都删了,在运行,那几个键又都可以了。。
键盘我是用e.keycode...key.up,key.down...这些控制的谁知道这是怎么冲突的啊?是不是需要在property里面设置一下啊谢谢非常感谢!!!!!THANK YOU SO MUCH
解决方案 »
- c#中清除picturebox画的图形
- Metro C#下如何实现INI的读写操作,有无相应的WinRT?
- Ajax局部刷新 Timer控制函数改变updatepanel之外页面控件状态
- 将控件放到最上层的问题
- C#获取相同属性的属性值
- 自定义控件,COMBOBOX,不可手写,TEXT属性无效
- 请问c#如何控制打印机,以及判断是否打印成功!急~~~100分
- 寻求一个解决方案,请大家给点思路!
- 框架中listbox中的值的传递问题,高分急等
- 怎样得到经过条件过滤的DataView的某一行的某一列的值呢?可能这个问题提的有点儿
- WPF中 propertyGrid控件 实现多语言版本问题
- 一个有关List<T>中元素替换的问题
设置上面的属性之后除了方向键其他键窗体都可以接收了,但是发现方向键还是接收不到,方向键的消息被系统处理了(处理控件移动焦点),重写ProcessDialogKey即可(不过这样就不可以用方向键改变控件的焦点了)protected override bool ProcessDialogKey(Keys keyData)
{ if (keyData == Keys.Up ||
keyData == Keys.Down ||
keyData == Keys.Left ||
keyData == Keys.Right)
{
return false;
}
else
{
return base.ProcessDialogKey(keyData);
}
}