extjs desktop startmenu(スタートメニュー)
3147 ワード
extjs desktopのスタートメニューの二級メニューは、簡単に実演して原理を実現するだけで、動的に生成する必要があれば、自分で改造すればいいです.以下の基本的な方法の原理:
まずjsファイルの作成開始メニューデータを作成します.
get Modules:function(){ return Get StartMenu(this) },
スタートメニューの二段メニューを実現できます.
まずjsファイルの作成開始メニューデータを作成します.
function GetStartMenu(app) {
var menuArray = [];
var m = {
launcher: {
text: ' A',
iconCls: 'icon-grid',
handler: function() {
return false;
},
menu: {
minWidth: 127,
items: []
}
}
};
m.launcher.menu.items.push({
winId: 'menua01',
winUrl: 'abc/abcd.html',
text: ' A01',
maximized: false,
iconCls: 'icon-grid',
scope: this,
handler: function(src) {
var desktop = app.getDesktop();
var win = desktop.getWindow('menua01');
if (!win) {
win = desktop.createWindow({
border: false,
id: 'menua01',
title: ' A01',
width: 600,
height: 500,
maximized: true,
maximizable: true,
resizable: true,
iconCls: 'icon-grid',
hideMode: 'offsets',
constrain: true,
layout: 'fit',
loader: {
url: 'abc/abcd.html',
autoLoad: true,
scripts: true
}
});
}
win.show();
return win;
}
});
m.launcher.menu.items.push({
winId: 'menua02',
winUrl: 'abc/bbbb.html',
text: ' A02'
maximized: false,
iconCls: 'icon-grid',
scope: this,
handler: function(src) {
var desktop = app.getDesktop();
var win = desktop.getWindow('menua02');
if (!win) {
win = desktop.createWindow({
border: false,
id: 'menua02',
title: ' A02',
width: 800,
height: 600,
maximized: false,
maximizable: true,
resizable: false,
iconCls: 'icon-grid',
hideMode: 'offsets',
constrain: true,
layout: 'fit',
loader: {
url: 'abc/bbbb.html',
autoLoad: true,
scripts: true
}
});
}
win.show();
return win;
}
});
menuArray.push(m);
return menuArray;
}
ホームページにこのファイルを紹介して、ap.jsを修正して、見つけます. get Modules:function(){ 中身を削除します.get Modules:function(){ return Get StartMenu(this) },
スタートメニューの二段メニューを実現できます.