加载掩码在extjs中不起作用

时间:2011-11-29 22:24:12

标签: extjs

加载掩码不起作用,我设置了属性loadMask: true,我仍然遇到同样的问题,我看不到loadmask控件,这个网格是在ui布局中添加的,我还使用了loadMask函数,我仍然有同样的问题,请指教。

     gridHistory = new Ext.grid.GridPanel({
         id: "gvHistory",
         ddGroup: 'gridDDGroup',
         store: gridStore,
         renderTo: 'HistoryPanel',
         layout: 'fit',
         columns: cols,
         enableDragDrop: true,
         stripeRows: true,
         pageSize: 25,
         header: false,
         loadMask: true,
         autoScroll: true,
         autoExpandColumn: 'Position_ID',
         height: resolveHistoryGridHeight(),
         forceFit: true,
         autoFill: true,
         iconCls: 'icon-grid',
         tbar: [{
             tooltip: 'Reload',
             iconCls: 'reload',
             iconMask: true, 
             handler: function () { getPositionsHistory(); }
         }, '-', {
             tooltip: 'Clear',
             iconCls: 'clear',
             iconMask: true, 
             handler: function () { Clear(); }
         }
         , '-', {
             xtype: 'checkbox',
             name: 'field1',
             boxLabel: 'Draw Track',
             id: 'cb_draw_track',
             handler: function () { if (this.checked) { drawTrack(); } }
         }],
         selModel: new Ext.grid.RowSelectionModel({ singleSelect: false })
     });

1 个答案:

答案 0 :(得分:2)

loadMask配置没有任何影响的原因是因为您的网格数据是内联定义的。

var gridStore = new Ext.data.JsonStore({ fields: fields, data: myData, root: 'records'});

据此,我的意思是您没有从服务器加载数据。加载掩码仅在向服务器发出请求时显示在网格上,这就是没有显示加载掩码的原因。

您可以将商店的数据属性更改为URL,并从服务器返回JSON响应,但如果您可以使用内联数据,我不会建议这样做。