C#中KeyDown与KeyUp事件

在键盘按下键然后释放的过程中有3个事件发生,分别为KeyDown事件、KeyPress事件和KeyUp事件。 KeyDown和KeyUp事件让应用程序捕捉用户在键盘上按下的特殊键或某些特定键甚至组合键,只有在想要取得按下键或特殊键的相关信息时,才用到KeyDown和KeyUp事件。下面对KeyDown和KeyUp事件分别进行介绍。

1.KeyDown事件

KeyDown事件在首次按下某个键时发生。

示例 KeyDown事件的使用

本示例中,判断用户是否按下特殊键,如果是,则显示在窗体的标题栏上。

程序主要代码如下。

private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
 string G_str_Mode = "";
 string G_str_text = e.KeyCode + ":" + e.Modifiers + ":" + e.KeyData + ":" + "(" + e.KeyValue + ")";
 if (e.Shift == true)
  G_str_Mode = "Shift 键被按下";
 if (e.Control == true)
  G_str_Mode = "Ctrl 键被按下";
 if (e.Alt == true)
  G_str_Mode = "Alt 键被按下";
 this.Text = G_str_text + G_str_Mode;
}

注意:上面的代码中,KeyDown事件取得了一个KeyEventArgs对象e,并返回相关的按键信息,KeyEventArgs参数提供数个属性值,这些属性根据键盘上被按下的按键返回对应值。KeyEventArgs参数的属性值如表所示。

表  KeyEventArgs属性值

属性值 说明
Control 获取一个值,该值指示是否曾按下Ctrl键
KeyCode 获取KeyDown或KeyUp事件的键盘代码
KeyData 获取KeyDown或KeyUp事件的键数据
KeyData 获取KeyDown或KeyUp事件的键数据
KeyValue 获取KeyDown或KeyUp事件的键盘值
Modifiers 获取KeyDown或KeyUp事件的修饰符标志。这些标志指示按下的Ctrl、Shift和Alt键的组合
Shift 获取一个值,该值指示是否曾按下Shift键

2.Keyup事件

Keyup事件在释放键时发生。

示例 Keyup事件的使用

本示例实现的是,当程序运行的时候,按完键盘后,自动设置窗体的大小。

程序主要代码如下。

private void frmKeyDownUP_KeyUp(object sender, KeyEventArgs e)

{
 this.ClientSize = new System.Drawing.Size(800,100);
}

时间: 2025-01-19 19:26:00

C#中KeyDown与KeyUp事件的相关文章

Javascript中KeyDown、KeyUp和KeyPress三个事件区别

在js中三个事件都是按键事件了,下面我们来看看KeyDown,KeyUp,KeyPress这三个事件的区别在哪里吧,希望例子能帮助到各位. 1.引发事件的按键 非字符键不会引发 KeyPress 事件,但非字符键却可以引发 KeyDown 和 KeyUp 事件.KeyPress 事件 KeyChar 属性可以获取输入的字符. 2.事件引发的时间 KeyDown 和 KeyPress 事件在按下键时发生,KeyUp 事件在释放键时发生. 3.事件发生的顺序 KeyDown -> KeyPress

javascript KeyDown、KeyPress和KeyUp事件的区别与联系_javascript技巧

KeyDown:在控件有焦点的情况下按下键时发生. KeyPress:在控件有焦点的情况下按下键时发生. KeyUp:在控件有焦点的情况下释放键时发生. 1.KeyPress主要用来接收字母.数字等ANSI字符 KeyDown 和 KeyUP 事件过程通常可以捕获键盘除了PrScrn所有按键(这里不讨论特殊键盘的特殊键 2.KeyPress 只能捕获单个字符 KeyDown 和KeyUp 可以捕获组合键. 3.KeyPress 不显示键盘的物理状态(SHIFT键),而只是传递一个字符.KeyPr

jQuery 键盘事件keydown ,keypress ,keyup介绍

一.首先需要知道的是: 1.keydown() keydown事件会在键盘按下时触发. 2.keyup()  代码如下 复制代码 $('input').keyup(funciton(){           alert('keyup function is running!!');         }); keyup事件会在按键释放时触发,也就是你按下键盘起来后的事件 3.keypress() keypress()事件和keydown是差不多的,只有一个例外,如果需要阻止按键的默认行为,你必须是

jQuery的keyup事件在苹果手机中不生效,有没有其他事件可取代?

问题描述 jQuery的keyup事件在苹果手机中不生效,有没有其他事件可取代? 在苹果手机中 如果用户点击图中的[看看]2字的时候,keyup事件不生效,有没有其他的时间可以解决这个问题,不知道谁遇到过没 解决方案 Jquery keyup事件jQuery之keyup()事件关于KeyUp事件 解决方案二: 不是应该jquerymobile 么?

js中kedown,keypress,keyup用法区别

1.keydown.keypress事件触发在文字还没敲进文本框,这时如果在keydown.keypress事件中输出文本框中的文本,得到的是触发键盘事件前的文本,而keyup事件触发时整个键盘事件的操作已经完成,获得的是触发键盘事件后的文本 Keypress是一个强大的键盘输入捕捉JavaScript库 .拥有一些非常特殊的功能,它非常容易上手和使用,大小只有9KB,并且不依赖其它JS框架  代码如下 复制代码 keypress.combo("shift s", function()

关于jquery中动态增加select,事件无效的快速解决方法_jquery

近来做项目,用的jquery1.6.2库,当动态增加div 及select时,事件却不起作用. 查了一些资料,发现bind事件:向匹配元素附加一个或更多事件处理器.而live事件:为当前或未来的匹配元素添加一个或多个事件处理器. 其资料如下: [bind和live的区别] live方法其实是bind方法的变种,其基本功能就同bind方法的功能是一样的,都是为一个元素绑定某个事件,但是bind方法只能给当前存在的元素绑定事件,对于事后采用JS等方式新生成的元素无效,而live方法则正好弥补了bin

JQ中bind(),live(),delegate()事件方法的区别

 jQuery团队在1.7版本中发布了一个用于绑定事件的新方法叫做on.这个方法包含了下面所介绍的live, bind, 和 delegate的功能,允许我们通过传递不同的参数指定绑定事件的方式而不是通过不同的方法名. 基础知识   定义和用法 bind() 方法为被选元素添加一个或多个事件处理程序,并规定事件发生时运行的函数. 将事件和函数绑定到元素 规定向被选元素添加的一个或多个事件处理程序,以及当事件发生时运行的函数. 语法 $(selector).bind(event,data,func

jquery中document ready 与事件监听绑定和解绑

1.document ready 先看代码: $(function(){  alert('你好'); }); 传入的参数是一个函数,我们需要做的是,需要在文档准备完毕之后去执行它.现在有2种情况: 1.文档还没有准备完毕,这些事件怎么办 2.文档已经准备完毕,这些事件怎么办 解决办法是,预先定义一个闭包内的全局变量来收集这些事件,然后在文档准备完毕之后去执行它.而如果文档已经准备完毕之后,传入的事件就直接执行即可. (function() {     // 预先定义事件队列容器     var

用XPath在PHP Web站点中显示Google Calendar事件

简介:Google Calendar 和其他在线日历应用程序将提供简单的集中式系统,在这类系统中,在线社 区可以维护事件日历,而社区成员可以获得关于最新事件的信息.但是许多组织更倾向于在其社区门户. 论坛或博客中显示事件日历.他们经常把事件日历信息从在线日历应用程序复制到 Web 站点中,降低了 在线集中管理事件的效率.Google Calendar 提供了集成应用程序接口 (API),从而为这个问题提供了很 好的解决方案.了解如何使用 XPath 提取并在 PHP Web 站点中显示 Goog