aardio 官方社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 18040|回复: 4

请教:Htmlayout 文本框 左右方向键事件怎么写

[复制链接]

7

主题

21

回帖

303

积分

二级会员

积分
303
发表于 2014-12-8 22:02:44 | 显示全部楼层 |阅读模式
本帖最后由 田雨春楊 于 2014-12-8 22:04 编辑

文本框 左右方向键 不能响应该怎么写呢?请大家指点。

  1. import win.ui;
  2. /*DSG{{*/
  3. var winform = ..win.form(text="htmlayout响应方向键事件";right=599;bottom=399)
  4. winform.add()
  5. /*}}*/

  6. import web.layout;
  7. var wbLayout = web.layout( winform,0xFFFF/*_HL_HANDLE_ALL*/ );

  8. wbLayout.onKeyDown = function (ltTarget,ltEle,keyCode, altState, ltKeyParams) {
  9.         select( keyCode ) {
  10.                 case 0x26/*_VK_UP*/ {
  11.                         ltTarget.innerText ="您按了上方向键。";
  12.                 }
  13.                 case 0x28/*_VK_DOWN*/ {
  14.                         ltTarget.innerText ="下方向键被您按了。";
  15.                 }
  16.                 case 0x25/*_VK_LEFT*/ {
  17.                         ltTarget.innerText = "按左方向键没效果!!!";
  18.                 }
  19.                 case 0x27/*_VK_RIGHT*/ {
  20.                         ltTarget.innerText ="按右方向键没效果!!!";
  21.                 }
  22.                 else {
  23.                         ltTarget.innerText = "您按了键盘!";
  24.                 }
  25.         }
  26. }

  27. wbLayout.html =/***
  28.     <input type="text" />      
  29. ***/

  30. winform.show();
  31. win.loopMessage();
复制代码

1

主题

17

回帖

407

积分

培训班

积分
407
发表于 2014-12-9 00:48:33 | 显示全部楼层
可以使用 wbLayout.onKeyUp

13

主题

294

回帖

1790

积分

荣誉会员

积分
1790
发表于 2014-12-9 09:17:38 | 显示全部楼层
要这样写:
wbLayout.sinking = {
    onKeyDown = function (ltTarget,ltEle,keyCode, altState, ltKeyParams) {  
   
    }
}
方向键已经被文本框处理了(移动光标)。
所以你要在他前面处理,事件是先sinking(捕获),再bubbling(冒泡)

propagation.jpg


13

主题

294

回帖

1790

积分

荣誉会员

积分
1790
发表于 2014-12-9 09:20:55 | 显示全部楼层
var wbLayout = web.layout( winform,0xFFFF/*_HL_HANDLE_ALL*/ );
最好不要这样写,这样 wbLayout会不必要的处理所有的事件( _HL_HANDLE_ALL )。用behavior各自处理自己的事件更好。

7

主题

21

回帖

303

积分

二级会员

积分
303
 楼主| 发表于 2014-12-9 10:15:45 | 显示全部楼层
感谢回复,学习了。
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2025-2-7 22:27 , Processed in 0.060886 second(s), 25 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表