之前的帖子里讲了ivx中很多组件都可以监听到鼠标的移入移出事件,还包括最常用的点击事件,其实我们也可以在案例中监听到键盘的按键操作,例如这个demo中我们可以在输入框内输入一些文本信息,然后点击send按钮或者直接敲击键盘Enter回车键就会在上方添加我们刚刚输入的内容。下面来说一下具体的实现方法。
1.很显然上面的输入信息的展示用到了循环创建,我们需要一个数组来存放全部输入的信息,这个demo比较简单添加一个一位数组即可。
2.接下来我们要做的就是在点击send按钮或者敲击Enter回车时将输入框的内容添加到一位数组的末尾。Send按钮的比较简单,直接给按钮添加一个点击事件即可。
而回车的点击判断需要用到应用系统组件,给应用系统添加事件可以看到按键按下的选项。我们将keyValue选择回车键值,在事件下添加好执行的动作就大功告成了。
3.补充
选择按键按下事件后comKey的选项其实一共有四个,第一个是单一按键的情况,而ctrlKey、shiftKey和altKey用于组合键,比如comKey选择ctrlKeyc,keyValue选择C就只有同时按下ctrl键和C键才能触发事件下的动作(实际上要先按ctrl再按C)。keyValue可以不填,也可以选择ivx给出的选项或者其他按键的键值,即按键的键名,如a-z,0-9。
这里的键值其实也是事件的返回参数之一,另外还有一个参数是编码。键盘上的每一个按键都有独立的编码,当我们点击一个按键时,应用系统都会监听到然后获取那个按键的键值和编码。下图是常用按键和编码的对应表,另外0-9对应的编码是48-57,a-z对应的编码是65-90。在ComKey和keyValue选择或填入的数据相当于增加一个判断条件,而利用事件的返回参数键值和编码我们就也可以在事件内部进行条件判断了。
原文地址:https://blog.51cto.com/14556317/2485487