时间:2021-05-19
在C# winform 应用程序中,对于键盘响应事件,经常使用到"KeyPress"、“KeyUp”、"KeyDown"事件,可以处理某个按键的自定义处理事件。有时想定义方向键的自定义处理事件时,你可以发现,虽然自定义的处理事件发生了响应,但是也可以看到,按下方向键时,发现窗体上控件的焦点也发生了切换。而这种结果不是我们想要的,我们不想按下方向键时,控件的焦点发生切换,只想响应我们自定义的处理函数即可。下面的方法可以取消方向键对控件焦点的控制:
复制代码 代码如下:
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)//取消方向键对控件的焦点的控件,用自己自定义的函数处理各个方向键的处理函数
{
switch (keyData)
{
case Keys.Up:
UpKey();
return true;//不继续处理
case Keys.Down:
DownKey();
return true;
case Keys.Left:
LeftKey();
return true;
case Keys.Right:
RightKey();
return true;
}
return base.ProcessCmdKey(ref msg, keyData);
}
UpKey()、DownKey()、LeftKey()、RightKey()分别是自定义的各个方向键的处理函数。在各个自定义处理函数之后使用return true 表示对按键的响应不继续处理,直接返回,这样就可以避免了方向键对控件焦点的控制。对于其他的按键,return base.ProcessCmdKey(ref msg, keyData);使用默认的处理。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
以win7为例,left是方向键中的左键,而right是方向键中的右键。如果键盘中的方向键坏了,可以使用shift+4和shift+6来替换方向左、右键,这里的
本文实例讲述了WinForm中变Enter键为Tab键实现焦点转移的方法,在进行C#应用程序开发时有一定的实用价值。分享给大家供大家参考。具体实现代码如下://
方向键是一个单独的区域,在输入文字的时候需要用到方向键,到另一个区域太浪费时间,我们可以使用组合键代替方向键,特别是方向键坏了的时候,该怎么设置组合键代替方向键
键盘上有两个ctrl键。leftctrl就是左边的那个ctrl。同理右边那个ctrl是rightctrl。left是方向键中的左键、right是方向键中的右键。
功能:单击单元格选中,选中过程中使用方向键更换选中的单元格,选中过程中按回车键或者直接双击单元格进入可编辑状态,单元格失去焦点时保存修改的内容。主要实现思路:选