`

Extjs4.1向Ext.grid.Panel创建的gridpanel中动态在第一行插入数据

    博客分类:
  • Ext
阅读更多


//一、配置Ext和导包

Ext.Loader.setConfig({
    enabled: true
});
Ext.Loader.setPath('Ext.ux', 'ext-4.1.0-beta-3/ux');

Ext.require([
    'Ext.grid.*',
    'Ext.data.*',
    'Ext.util.*',
    'Ext.state.*',
    'Ext.ux.RowExpander',
    'Ext.selection.CheckboxModel'
]);

 

//二、定义数据模型

Ext.define('GPSInfoModel', {
    extend: 'Ext.data.Model',
    fields: [
        {name: 'number_plate'},
        {name: 'call_letter'},
        {name: 'speed'},
        {name: 'cncourse'},
        {name: 'gpstime'},
        {name: 'stamp'},
        {name: 'referenceposition'},
        {name: 'encourse'},
        {name: 'vehiclekind'},
        {name: 'vehiclekind_id'},
        {name: 'unit_id'},
        {name: 'historyid'}
     ]
});

 

//三、定义Store

var getLocalStore = function() {
    return Ext.create('Ext.data.ArrayStore', {
        model: GPSInfoModel/*,
        data: Ext.grid.dummyData*/
    });
};

 

//四、定义gridPanel

var gridPanel = Ext.create('Ext.grid.Panel', {
    store: getLocalStore(),
    columns: [
        {text: "车牌号码", dataIndex: 'number_plate',locked: true,width:100},
        {text: "车台号码", dataIndex: 'call_letter',width:100},
        {text: "速度", dataIndex: 'speed',width:50},
        {text: "方向", dataIndex: 'cncourse',width:50},
        {text: "定位时间", dataIndex: 'gpstime',width:110}, 
        {text: "上报时间", dataIndex: 'stamp',width:110},
        {text: "参考位置", dataIndex: 'referenceposition',width:600}
    ],
    collapsible: true,
    animCollapse: false,
    title: '车辆显示区域',
    iconCls: 'icon-grid',
    listeners : {
  itemdblclick : function(view, record, item, index, e, eOpts) {
   var unitid=record.get('call_letter');
   //alert('unitid:'+unitid);
   //propertyGrid.setSource(record.data);
   // 获取propety grid组件
            var propGrid = Ext.getCmp('propGrid');
            // 保证property grid是存在的
            if (propGrid) {
                // 获得property grid 的store数据
                //propGrid.setSource(record.data);//这一句是可行的,请不要删除
             var data={
                        "车牌号码": record.get('number_plate'),
                        "车台号码": record.get('call_letter'),
                        "行驶速度": record.get('speed'),
                        "行驶方向": record.get('cncourse'),
                        "所在位置": record.get('referenceposition'),
                        "定位时间": record.get('gpstime'),
                        "上报时间": record.get('stamp')
                    };
                propGrid.setSource(data);
            }
  }
    }
});

 

//五、动态向里面插入数据并置顶

function addGPSInfo(GPSInfoModelData) {
 
/* var GPSInfoModel = [{
    'number_plate' : '11111111111111',
    'call_letter' : 29.89,
    'speed' : 0.24,
    cncourse : 0.81,
    gpstime : '9/1 12:00am',
    stamp : 'Services',
    referenceposition : 'ASC'
   }, {
    'number_plate' : '222222222222222222222',
    'call_letter' : 29.89,
    'speed' : 0.24,
    cncourse : 0.81,
    gpstime : '9/1 12:00am',
    stamp : 'Services',
    referenceposition : 'ASC'
   }];*/

 var store = gridPanel.getStore();
 var count = store.getCount();
 if (count > 10) {
  store.remove(store.getAt(count - 1));
 }
 gridPanel.getStore().insert(0, GPSInfoModelData);
 //gridPanel.select(0,true,true);
 gridPanel.setScrollTop(0);
}


分享到:
评论

相关推荐

    extjs4.1-ux.rar

    1、Ext.ux.aceeditor.Panel 2、Ext.ux.grid.feature.Tileview 3、Ext.ux.upload.Button 4、Ext.ux.toggleslide.ToggleSlide 5、Ext.ux.container.ButtonSegment 6、Ext.ux.grid.plugin.RowEditing 7、Ext.ux.grid....

    extjs中Ext.Panel和TreePanel 组件动态加载本地页面数据

    总结来说,`Ext.Panel`和`TreePanel`在EXTJS中是两个关键的组件,它们支持动态加载本地数据,提高了用户体验。理解这两个组件的工作原理和如何利用`Store`、`Ajax`、`TreeStore`进行数据加载,是EXTJS开发中的重要...

    Ext grid panel 滚动条位置不变

    通过上述方法,可以在Ext grid panel中实现实时数据刷新时滚动条位置不变的功能。这对于提高用户体验至关重要,尤其是在处理大量实时数据的情况下。开发者可以根据实际需求进一步优化代码,比如增加错误处理机制、...

    Ext.grid.GridPanel属性祥解

    `Ext.grid.GridPanel`是ExtJS中用于展示表格数据的核心组件之一。它提供了丰富的配置选项和方法来帮助开发者灵活地控制表格的表现形式及功能。对于初学者或者希望深入理解`GridPanel`特性的Web开发人员来说,掌握其...

    ExtJS 4.0 改善Ext.grid.plugin.RowEditing (重构,v1.4版本,2011-09-11)

    这篇文章的标题指出这是一个关于“Ext.grid.plugin.RowEditing”的重构,版本为v1.4,发布日期为2011年9月11日。重构通常意味着代码的改进,可能涉及性能优化、错误修复或功能增强。在4.0版本中,RowEditing插件的...

    ExtJs GridPanel双击事件获得双击的行

    在ExtJs中,GridPanel是用于展示数据的常用组件,它可以提供丰富的功能,如排序、分页、筛选等。在实际应用中,我们经常需要监听用户的交互行为,比如双击行进行进一步的操作。本篇文章将深入讲解如何在ExtJs ...

    ExtJs选中var editor = new Ext.ux.grid.RowEditor详解

    ### ExtJs选中 `var editor = new Ext.ux.grid.RowEditor` 详解 在Web开发领域,特别是使用ExtJs框架进行复杂用户界面构建时,`RowEditor` 是一个非常实用的功能,它允许用户直接在表格行内编辑数据,极大地提高了...

    Extjs4.1中文API指南.chm

    Extjs4.1中文API.chm

    给Extjs的GridPanel增加“合计”行

    在EXTJS中,GridPanel是一种常用的组件,用于展示表格数据。在实际应用中,我们经常需要在GridPanel底部显示一行“合计”行,以便对某一列或多列的数据进行求和或其他统计操作。这篇博文“给Extjs的GridPanel增加...

    extjs4的Ext.frorm.Panel控件属性说明和表单控件说明

    主要用例子说明extjs4的form表单的运用,其中有表单属性说明,表单控件运用说明如: title:'表单', //表单标题 bodyStyle:'padding:5 5 5 5', //表单边距 height:120, //表单高度 width:200, //表单宽度 ...

    ExtJS4+Accordion+SERVLET/STRUTS2+JSON+Ext.tree.Panel实例

    总结来说,这个实例展示了如何将前端的ExtJS4框架,特别是其Accordion布局和Ext.tree.Panel组件,与Servlet和Struts2后端框架集成,利用JSON进行数据交换,来创建一个动态的、交互性强的Web应用。用户可以通过折叠和...

    extjs-Ext.ux.form.LovCombo下拉框

    在EXTJS框架中,`Ext.ux.form.LovCombo`是一种自定义组件,它扩展了基本的`Ext.form.field.ComboBox`,提供了更丰富的功能,尤其是针对多选和联动选择的需求。这个组件通常用于创建具有“lov”(即“Look Up Value”...

    Extjs4.1样式调整.pdf

    在EXTJS 4.1中,样式调整是一个关键部分,用于创建美观且符合设计要求的用户界面。以下是一些EXTJS 4.1组件样式调整的主要知识点: 1. **baseBodyCls**: 这是一个字符串属性,用于向组件的body内容元素应用CSS类。...

    GridPanel中的单元格不能选中复制的解决方法

    解决Ext.grid.GridPanel中的单元格不能选中复制的问题需要从两个方面入手:添加新的CSS样式和修改Ext.grid.GridPanel的protoType。这些解决方案可以帮助开发者解决这个棘手的问题,提高用户体验。

    Extjs4.1 小例子(适合extjs初学者学习使用)

    5. **API使用**:熟悉ExtJS 4.1提供的各种类库,如Grid、Panel、Window、Form等,以及它们的方法和属性。 6. **主题和皮肤**:了解如何自定义ExtJS的外观,包括使用SASS和Compass工具来修改主题。 7. **MVC模式**...

    Ext.net实现GridPanel拖动行、上移下移排序功能DEMO

    对于GridPanel中拖动选中行排序的实现,网上有不少ExtJs实现的例子,但是没有找到使用Ext.net实现的,正好最近有个需求要使用,干脆来写一个。 DEMO功能说明: 1、拖动GridPanel选中行到新位置排序。 2、在拖动结束...

    ExtJS grid过滤操作

    ExtJS Grid是一个强大的数据展示组件,它允许用户以表格的形式查看和操作大量数据。在实际应用中,数据过滤是常见的需求,以便用户能快速定位到感兴趣的信息。本篇将深入探讨ExtJS Grid的过滤操作,以及如何动态地对...

    spket ExtJs4.1 全提示.路径ok.

    spket路径ok ext4.1配置,在build 目录下,直接引用,全提示。你懂得,爽...

    ExtJS4.1实现的mvc模式经典入门案例

    在ExtJS 4.1中,引入了强大的MVC(Model-View-Controller)模式,这是一种设计模式,有助于组织和分离应用程序的不同部分,使得代码更加模块化、可维护。本案例将深入探讨如何使用ExtJS 4.1实现MVC模式。 **一、...

Global site tag (gtag.js) - Google Analytics