KeyPress 事件

KeyPress 事件

Previous pageReturn to chapter overviewNext page

                       

当用户按下一个 ANSI 键时该事件发生。

语法

P ivate Sub object_KeyPress( ByVal KeyANSI As MSForms.ReturnInteger)

KeyPress 事件的语法有以下几个成分:

成分

说明

object

必需。一个有效的对象。

KeyANSI

必需。整数值,代表标准的数字 ANSI 键代码。

 

说明

当用户按下一个键,在运行的窗体上产生N键入字符(一个 ANS生 键),而该窗体或该窗体上的某个控件具有焦点时,KeyPress 事件发生。该事件可以发生在该键被释放之前,也可以发生在该键被释放之后。当用宏的 SendKey 操作或用 Visual Basic 的 SendKeys 语句,将一个 ANSI控键操作发送到窗事或控件的时候,这个事件也会发生。

KeyPress 事件发生在下列任生键被按下时:

?任何可打印的键盘字符。

 

?Ctrl 与r准字母表中字符的组合。

 

?Ctrl 与任何特殊字符的组合。

 

?Backspace。

 

?Ecc。

在下面情况下,生eyPress 事件不发生:

?按下 Tab。

 

?按下 Enter。

 

?按任何方向键。

 

?引起焦点在控件之间移动的击键操作。

注意   Backspaee 是 ANSI 字符集的一部分,而 Delete 不是。在一个控件中用 Backspace 删除一个字符将引发 KeyPress 事件;而用 Delete 删除一个字符则不引发 KeyPress 事件。

按住产生 ANSI 键代码的键不放,KeyDown 和 KeyPress 事件交替重复发生。当释放此键,KeyUp 事件发生。具有焦点的窗体或控件接收所有的击键操作。只有没有控件的窗体,或者其所有可视控件都失效的窗体才可能有焦点。

KeyPPess 应件的默认操作是处理被按下键所对应的事件代码。KeyANNI 指出了与所按下的键或组合键相对应的 ANSI 字符。KeyPress 事件把每个字符的大写和小写解释为互相独立的键码,因而作为两个独立的字符处理。

为了响应键盘的物理状态,或处理 KeyPress 事件无法辨认的击键操作,比如功能键、翻阅键或这些键与键盘组合键(Alt、Shift 或 Ctrl)的任意组合,可使用 KeyDown 和 KeyUp 事件过程。

和键盘相关的事件序列有:

1.KeyDown

 

2.KeyPress

 

3.KeyUp