最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
ExtJS桌面版实现图标换行示例代码
时间:2026-06-09 10:15:53 编辑:袖梨 来源:一聚教程网
![ExtJS[Desktop]实现图标换行示例代码](https://img.111cn.net/uploads/20260609/img_6a2777591a68930.webp)
首先,在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;
}
}
然后在当前的js文件中的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);
}
相关文章
- 萝卜快跑运营城市名单 - 2026年最新覆盖城市查询 06-12
- 小笼包的正宗做法与技巧 - 家庭版鲜香多汁小笼包制作指南 06-12
- 双十一广告语大全 - 2026热门创意文案参考 06-12
- 夸克电脑版下载安装 - 官方最新PC客户端 06-12
- ChatGPT引发的社会焦虑现象 - 2026年深度解析 06-12
- 网红城市有哪些 - 2026热门旅游打卡地推荐 06-12