找回密码
 立即注册

QQ登录

只需一步,快速开始

liu.bobo

高级会员

8

主题

14

帖子

1868

积分

高级会员

积分
1868

活字格认证

liu.bobo
高级会员   /  发表于:2012-5-21 13:49  /   查看:6530  /  回复:4
你好,之前我们的Merry_jing问过一个问题:“关于Spread中Tab键和Enter键的设定”,后来有总结如下的解决方法。使用这个代码,在Spread中,按Tab键没有作用,只能通过方位键进行Cell间移动,同时按回车键,是移动到下一行的相同列。但是使用这个代码有个问题,就是一旦光标进入Spread中,就没办法跳出来,而我们的要求是,光标在Spread中的时候,按Tab键要将光标移动到画面顺序的下一个控件上。不知有没有解决办法,请帮助。(附件是画面aspx文件,请参考)
    function keydown() {
        if (window.event.keyCode == 9) {
            window.event.keyCode = 13
            return;
        }
        if (window.event.keyCode == 13) {
        window.event.keyCode=40;
        }
    }
    document.onkeydown = keydown;

SC_037.rar

3.27 KB, 下载次数: 434

rar

4 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-5-21 16:54:00
沙发

回复 1# liu.bobo 的帖子

liu.bobo 你好,
请使用以下代码测试:

  1.     <script type="text/javascript">
  2.         window.onload = function () {
  3.             var ss = document.getElementById("FpSpread1");
  4.             if (ss != null) {
  5.                 ss.AddKeyMap(9, false, false, false, null);
  6.                 ss.AddKeyMap(13, false, false, false, "this.MoveToNextRow()");
  7.             }
  8.         }
  9.     </script>
复制代码
回复 使用道具 举报
liu.bobo
高级会员   /  发表于:2012-5-21 18:08:00
板凳

回复 2# iceman 的帖子

你好,谢谢回复。
但是问题没有得到解决。
我本身对JS也不是很熟,我不知道是我对你上一段代码的使用有误还是确实不能解决问题。
反正我使用了上述代码没有效果。(我们的要求是在Spread里面点Tab按钮,焦点要跳出Spread,落到Spread后面的控件上)
为了避免是我使用不当造成反复发问的情况,我已经将我们测aspx文件上传,能否针对具体代码提出解决方案。
谢谢。
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-5-22 09:11:00
地板
liu.bobo 你好,
我对问题的理解为:
1.使用 Tab 键在控件之间切换,例如,当前页面有两个控件 Spread 和 标准控件 Button ,当前焦点在 Spread 上,点击 Tab 键,焦点切换到标准控件 Button 上。
2.点击 Enter 键,活跃单元格移动到当前列的下一行。
Spread 提供内置 JS 快捷键设置方法 AddKeyMap ,详细可以参考帮助文档。

  1.     <script type="text/javascript">
  2.         window.onload = function () {
  3.             var ss = document.getElementById("FpSpread1");
  4.             if (ss != null) {
  5.                 //设置 Spread 中 Tab 键失效,从而移动到下一控件
  6.                 ss.AddKeyMap(9, false, false, false, null);
  7.                 //设置 Enter 键移动方式
  8.                 ss.AddKeyMap(13, false, false, false, "this.MoveToNextRow()");
  9.             }
  10.         }
  11.     </script>
复制代码
下面是我的测试 Demo:
4533.zip (2.87 MB, 下载次数: 787)
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-5-22 09:16:00
5#

回复 3# liu.bobo 的帖子

需要提醒楼主的是:

1.由于缺少日文版 Spread 控件测试环境,无法查看楼主所提供的 Demo,所以,我们会使用 Spread for .NET 英文版进行测试。

2.目前我们的技术支持论坛只提供 GrapeCity 中文版和英文版的支持。日文版产品请楼主到该地址发帖询问:http://www.grapecity.com/tools/support/technical/knowledge.asp
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部