`

Ext JS 键映射:键盘作为第一类操作对象

阅读更多

Ext.KeyMap

Ext提供几个不同的组件,支持键盘导航,比如GridPanel,ComboBox和TreePanel。为了应用客户键盘操作,开发者能够使用Ext.KeyMap和Ext.KeyNav类来捆绑键盘操作给任何组件或者元素。

首先开发者需要操作的就是F1-12功能键。大多数浏览器预留一些键,通过ext-pertise,开发者能够覆盖缺省的功能为我们自己的应用使用。我们的应用完全是动态和服务器端驱动的,所以,我们必须预先定义键盘。我们可以动态创建一个键盘操作设置数组对象,通过我们新的Ext.KeyMap对象传递。


Js代码 复制代码
  1. var keys = [];   
  2. for(var i = 0;i <buttons.length;i++) {   
  3.     var btn = buttons[i];   
  4.     // fkey property contains a string referencing the Ext constants (ie: Ext.EventObject.F1)   
  5.     var fk = eval(button.fkey);   
  6.     btn.handler = this.handleKey.createDelegate(this, [fk]);   
  7.   
  8.     keys.push({   
  9.         key: fk,   
  10.         handler: this.handleKey.createDelegate(this, [fk]),   
  11.         stopEvent: true,   
  12.         scope: this  
  13.     });   
  14. }  
var keys = [];
for(var i = 0;i <buttons.length;i++) {
    var btn = buttons[i];
    // fkey property contains a string referencing the Ext constants (ie: Ext.EventObject.F1)
    var fk = eval(button.fkey);
    btn.handler = this.handleKey.createDelegate(this, [fk]);

    keys.push({
        key: fk,
        handler: this.handleKey.createDelegate(this, [fk]),
        stopEvent: true,
        scope: this
    });
}




Ext.KeyNav

另外的键操作是一些对网格键盘导航附加的功能。GridPanel从RowSelectionModel创建了键导航,查看这个 grid 例子和选择一行,你能使用上下箭头键来上下移动。


Js代码 复制代码
  1. MyGrid = Ext.extend(Ext.grid.GridPanel,{   
  2. ...   
  3.   
  4. afterRender : function() {   
  5.    MyGrid.superclass.afterRender.call(this);   
  6.   
  7.     this.nav = new Ext.KeyNav(this.getEl(),{   
  8.         pageDown: this.pagingNav.createDelegate(this,['next']),   
  9.         pageUp: this.pagingNav.createDelegate(this, ['prev']),   
  10.         home: this.pagingNav.createDelegate(this,['first']),   
  11.         end: this.pagingNav.createDelegate(this,['last']),   
  12.         scope: this  
  13.     });   
  14. },   
  15.     
  16. pagingNav: function(page) {   
  17.     var pt = this.getBottomToolbar();   
  18.     if (!pt[page].disabled) {   
  19.         pt.onClick(page);   
  20.     }   
  21. },   
  22.   
  23. ...   
  24.   
  25. });  
分享到:
评论

相关推荐

    EXT JS 3.0 Core Class Diagram

    EXT JS 3.0 Core Class Diagram 是一个关于EXT JS库核心类结构的图表,它展示了EXT JS 3.0版本中的主要组件和它们之间的关系。EXT JS是一个强大的JavaScript库,主要用于构建富客户端Web应用程序,其核心功能包括...

    ext JS 源码和学习资料

    EXT JS 是一种基于JavaScript的富客户端应用框架,主要用于构建交互性强、用户体验良好的Web应用程序。它提供了大量的组件和功能,使得开发者能够轻松创建复杂的用户界面。本压缩包包含EXT JS的多个版本源码,如ext-...

    javascript的ext综合应用,Ext js 资源大全

    Ext JS 是一个强大的JavaScript库,专门用于构建富客户端应用程序。它提供了一套完整的组件模型,包括数据绑定,事件处理,布局管理,以及丰富的用户界面组件,使得开发者无需深入JavaScript底层细节,就能创建出...

    深入浅出Ext_JS:数据存储与传输

    数据模型是Ext JS中表示业务对象的一种方式,它定义了数据的结构,包括字段(Fields)和验证规则(Validation Rules)。通过定义模型,开发者可以方便地操作和处理业务数据,确保数据的一致性和准确性。 接着,数据...

    Ext js Xtype

    例如,如果要创建一个按钮,可以简单地在配置对象中指定`xtype: 'button'`,Ext JS就能理解并实例化正确的按钮组件。 #### 组件类型概览 - **Box Components**: 这些组件使用盒模型进行布局和管理。如`Ext....

    Ext JS MVVM技巧:第1部分。自绑定

    Ext JS 是一个强大的JavaScript应用程序框架,它提供了丰富的用户界面组件和功能,用于构建富客户端Web应用。MVVM(Model-View-ViewModel)是Ext JS中的一种设计模式,它简化了数据绑定和应用逻辑的管理。在"Ext JS ...

    ext js javascript ext设计软件

    EXT JS是一种基于JavaScript的开源富客户端框架,专为构建企业级Web应用程序而设计。它提供了一套完整的组件化UI控件、数据绑定机制以及强大的事件处理系统,使得开发者能够创建功能丰富的、交互性强的Web应用。EXT ...

    ext JS+ssh的一个简单Dome

    3. **Hibernate**:是一个对象关系映射(ORM)框架,用于简化数据库操作,将Java对象直接映射到数据库表,避免了传统的JDBC编码。 在这个“EXT JS+SSH”的简单示例中,EXT JS可能被用来创建前端的用户界面,通过...

    ext js 打包资源下载

    Ext JS 是一种流行的JavaScript库,专门用于构建富客户端的Web应用程序。它提供了丰富的用户界面组件,如表格、面板、窗口、菜单等,使得开发者能够创建功能强大的交互式前端应用。在"ext js 打包资源下载"中,我们...

    Ext获取对象

    标题“Ext获取对象”指的是在Ext JS框架中获取或操作对象的方法。Ext JS是一个流行的JavaScript库,用于构建桌面和移动应用程序的用户界面。它提供了一种面向对象的编程模型,使得开发者可以方便地管理和操作组件、...

    ext面向对象和继承

    在JavaScript的世界里,面向对象(Object-Oriented Programming, OOP)是一种常用的设计模式,它允许我们通过类和对象来组织代码,实现代码的复用和模块化。本篇文章将探讨EXTJS框架中的面向对象机制,特别是继承的...

    最新Ext js 开发工具(IDE)

    1. **Ext JS**:这是一种基于组件的JavaScript框架,它允许开发者使用面向对象的方式来构建复杂的Web UI。Ext JS的核心特性包括高度可定制的组件、数据绑定、数据网格、拖放功能、布局管理和丰富的API。通过这些特性...

    Ext js 资源大全

    Ext JS 是一种基于 JavaScript 的富客户端应用框架,用于构建功能丰富的、交互性强的Web应用程序。这个资源大全包含了一些关键的学习资料,将有助于深入理解和掌握Ext JS的精髓。 首先,我们来看"EXT学习文档 .doc...

    EXT JS eclipse插件

    EXT JS 是一款强大的JavaScript库,专门用于构建富客户端应用程序。它提供了一系列的组件,包括表格、树形视图、图表、窗体等,使得开发者能够创建功能丰富的、交互性强的Web应用。Eclipse是一款广泛使用的Java开发...

    EXT JS 统计图表

    EXT JS 是一款强大的JavaScript库,专门用于构建富客户端应用程序。其统计图表组件是EXT JS库中的一个重要部分,提供了丰富的图表类型和高度定制的功能,适用于数据分析、数据可视化以及各种业务报告。EXT JS Charts...

    EXT JS 实例集合

    EXT JS 是一个强大的JavaScript库,专门用于构建富客户端应用程序,尤其在企业级Web应用中广泛应用。EXT JS 提供了丰富的组件、布局管理、数据绑定、拖放功能等,使得开发者可以构建出美观且功能强大的用户界面。EXT...

    EXT_JS实例,官方实例

    EXT_JS是一种基于JavaScript的开源富客户端框架,专为构建交互式、数据驱动的Web应用程序而设计。EXT JS的核心是EXT Core,它提供了一套高级的DOM操作和事件处理功能。EXT JS实例通常包括一系列预定义的组件、布局、...

    Ext JS - JavaScript Library

    Ext JS 是一个强大的JavaScript库,专门用于构建富客户端Web应用程序。这个库以其丰富的用户界面组件、数据绑定功能和可扩展性而闻名。Ext JS 提供了一整套预先封装的组件,如表格、面板、菜单、按钮、表单、树形...

Global site tag (gtag.js) - Google Analytics