2012-10-11 86 views
0

所以我有這個加載掩碼在我想改變高度的網格上。ExtJS改變加載掩碼的高度

我已成功地更改使用

var loadMask = grid.view.loadMask; 
loadMask .setHeight(maskHeigtht); 

的高度,但只是改變了信息的高度。我想要背後的藍色面具改變。

任何想法?

+0

這是什麼總體目的?加載遮罩可以附加到任何Ext.Element,因此您可以將它附加到不同大小的元素並遮罩它? – dougajmcdonald

+0

嗯,我有一個面板裏面有一個網格,面罩覆蓋了商店加載時的貪婪,但它也向下延伸(離開頁面),在面具激活的同時瞬間創建一個滾動條。我想降低高度,所以它沒有超出瀏覽器窗口的範圍。 – Kal

回答

0

我通常會將掩碼應用到您要明確掩碼的元素。我經常使用這樣的代碼來掩蓋網格。

var grid = Ext.getCmp('myGrid').getEl(); //note the use of getEl() to get the grids containing element 

    grid.mask("Loading data..."); 

    Ext.getStore('myStore').load({ 
     callback: function() {    
      grid.unmask(); 
     } 
    }); 

上面的代碼會在商店加載時屏蔽網格,然後解除屏蔽。

+0

非常感謝!使用你的例子,我說: viewConfig:{ loadMask:假 } 到面板,那麼這是我的商店聽衆: 聽衆:{ beforeload:功能(存儲,操作選項){VAR 格= Ext.getCmp ( 'programList')getEl(); grid.mask(「加載數據...」); }, load:function(){ var grid = Ext.getCmp('programList')。getEl(); grid.unmask(); } } 再次感謝! :) – Kal

+1

是的,有很多種方法可以讓你去除面具,但一般來說,就像你所做的一樣,找到你想要的元素,找到兩個合理的事件來添加和去除面具並從那裏開始。很高興幫助 – dougajmcdonald