keypress 事件

应用于 请参阅

当用户按下并释放某个键时发生此事件。

语法

PROCEDURE Object.KeyPress
LPARAMETERS [nIndex,] nKeyCode, nShiftAltCtrl

— 或者 —

LPARAMETERS nKeyCode, nShiftAltCtrl

参数

在该事件的处理程序里,必须包含 LPARAMETERS 或 PARAMETERS 语句,并为每个参数指定名称。

nIndex

唯一地标识控制数组中的一个控制。

nKeyCode

包含一个数值,该数值标识被按下的键。有关特殊键和组合键的编码,请参阅INKEY( )

nShiftAltCtrl

如果按下在 nKeyCode 中标识的键时,也按下修改键, 则设置一个位。

有效的修改键是SHIFT、CTRL和ALT 键。

下表列出了为单独的修改键在 nShiftAltCtrl 中返回的值。

对 nShiftAltCtrl 的修改键值

SHIFT 1
CTRL 2
ALT 4

参数是位的总数,重要性最小的位对应于SHIFT 键 (bit 0)、 CTRL键 (bit 1) 与 ALT 键(bit 2 )。

位分别对应于值 1、2和 4。该参数指出了键的状态。可以设置一些位、所有位或不能设置位,表示按下了一些键、所有键或没有按键。例如,如果同时按下 CTRL 与 ALT键,nShiftAltCtrl 的值为6。

说明

具有焦点的对象接收该事件。

在两种情况下,表单可接收 keypress 事件:

keypress 事件常用于截取输入到控件中的键击。它使您可以立即检验键击的有效性或对键入的字符进行格式编排。使用 KeyPreview 属性可以创建全局键盘处理程序。

对任何与 ALT键的组合键,不发生keypress 事件。