首页 > Web开发 > 详细

extjs desktop中桌面图标换行

时间:2014-05-02 13:29:48      阅读:757      评论:0      收藏:0      [点我收藏+]

在Desktop.js中扩展一个函数

initShortCut : function() {
var btnHeight = 64;
var btnWidth = 64;
var btnPadding = 30;
var col = {
index : 1,
x : btnPadding
};
var row = {
index : 1,
y : btnPadding
};
var bottom;
var numberOfItems = 0;
var taskBarHeight = Ext.query(".ux-taskbar")[0].clientHeight + 40;
var bodyHeight = Ext.getBody().getHeight()- taskBarHeight;
var items = Ext.query(".ux-desktop-shortcut");
for ( var i = 0, len = items.length; i < len; i++) {
numberOfItems += 1;
bottom = row.y + btnHeight;
if (((bodyHeight < bottom) ? true : false)
&& bottom > (btnHeight + btnPadding)) {
numberOfItems = 0;
col = {
index : col.index++,
x : col.x + btnWidth + btnPadding
};
row = {
index : 1,
y : btnPadding
};
}
Ext.fly(items[i]).setXY([ col.x, row.y ]);
row.index++;
row.y = row.y + btnHeight + btnPadding;
}
}

 

在createDataView 中添加一个监听

createDataView : function() {
var me = this;
return {
xtype : ‘dataview‘,
overItemCls : ‘x-view-over‘,
trackOver : true,
itemSelector : me.shortcutItemSelector,
store : me.shortcuts,
tpl : new Ext.XTemplate(me.shortcutTpl),
listeners : {
resize : me.initShortCut
}
};
},

在afterRender 渲染结束时调用函数

afterRender : function() {
var me = this;
me.callParent();
me.el.on(‘contextmenu‘, me.onDesktopMenu, me);
Ext.Function.defer(me.initShortCut, 1);
},

extjs desktop中桌面图标换行,布布扣,bubuko.com

extjs desktop中桌面图标换行

原文:http://www.cnblogs.com/liuhehe/p/3703855.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!