关于ivx监听键盘按键的经验总结

之前的帖子里讲了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

时间: 2024-10-04 12:48:02

关于ivx监听键盘按键的经验总结的相关文章

python 在windows下监听键盘按键

python 在windows下监听键盘按键 使用到的库 ctypes(通过ctypes来调用Win32API, 主要就是调用钩子函数) 使用的Win32API SetWindowsHookEx(), 将用户定义的钩子函数添加到钩子链中, 也就是我们的注册钩子函数 UnhookWindowsHookEx(), 卸载钩子函数 CallNextHookEx()在我们的钩子函数中必须调用, 这样才能让程序的传递消息 在没有钩子函数的情况下windows程序运行机制 键盘输入 --> 系统消息队列 --

Winform下WebBrowser 编辑模式 监听键盘按键事件

最近使用 WebBrowser 做了个富文本编辑器(其实网上有很多很多).例如下面这个玩意(不要在意界面神马的) WebBrowser在编辑模式下可以做一些类似Word文档的操作,改变字体大小颜色等等等.. 开启编辑模式-> webBrowser1.Url = new Uri("", UriKind.Relative);//这行保证Document不为null if (webBrowser1.Document != null) { var doc = this.webBrowse

Atitit。监听键盘上下左右方向键事件java js jquery c#.net

Atitit.监听键盘上下左右方向键事件java js jquery   c#.net 1. Keyword1 2. 通用的实现流程1 3. Js的实现1 3.1. Bind control ,event handeler1 3.2. key_press_hadler4up2 4. Java的实现3 5. C# .net winformn4 6. 参考4 1. Keyword 键盘事件  方向键   上下左右  按键监听 2. 通用的实现流程 Bind (control,key_eventHan

监听键盘的enter键

$(document).keypress(function(e)              {                  switch(e.which)                  {                                         case 13:   if(g_flag == "login"){validateLoginForm();}                                else if(g_flag == &

IOS 监听键盘的通知

通知方法: /** * 当键盘改变了frame(位置和尺寸)的时候调用 */ - (void)keyboardWillChangeFrame:(NSNotification *)note { // 设置窗口的颜色 self.view.window.backgroundColor = self.tableView.backgroundColor; // 0.取出键盘动画的时间 CGFloat duration = [note.userInfo[UIKeyboardAnimationDuration

通过KVO来监听键盘弹出和弹回

在通知中心建立一个广播来监听键盘的弹出和弹回,在监听事件中加入触发事件的一些操作. [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(keyboardWillChange:) name:UIKeyboardWillChangeFrameNotification object:nil]; [[NSNotificationCenter defaultCenter]addObserver:self sele

iOS 监听键盘高度,输入框上升

1 //设置输入框 ---<因为输入框用了get方法,所以第一次调用输入框要用self 调用>: 2 self.textlab.frame=CGRectMake(20, 420, 250, 30); 3 _textlab.layer.borderColor=[UIColor blueColor].CGColor; 4 _textlab.layer.borderWidth= 0.5f; 5 _textlab.backgroundColor=[UIColor colorWithRed:0.830

Js监听键盘事件

表单提交的时候大多数用户都习惯用回车键来进行提交,页面接受回车键的处理如下: if(navigator.userAgent.indexOf("MSIE")>0) {   //IE document.onkeydown=function(){ if(13 == event.keyCode){ alert('browser is ie and enter key down'); } } }else{   //非IE window.onkeydown=function(){ if(13

Android 监听键盘弹出和收起.

entends:http://stackoverflow.com/questions/36837066/how-to-validate-virtual-keyboard-visibility 监听键盘弹出和收起. /* Somewhere else in your code */ RelativeLayout mainLayout = findViewById(R.layout.main_layout); // You must use your root layout InputMethodM