[img]http://i3.6.cn/cvbnm/26/32/e3/ade2db16bb801e74097b15428756c836.jpg[/img]我想在Toolbar.Button里加一个模板,就像图那样,当点击Alarm Status右边那个三角形时那个时,下拉一个像图那样的东西出来(好像form一样,如图),Ext.Toolbar.Button里面不是有一个template吗,但就是不知道怎么做,请大家写一下代码,能写下全部代码最好,请大家帮忙
很急,先谢了
[b]问题补充:[/b]
atian25 (高级程序员)
能不能帮我写下"adpater对panel包装成一个menuitem”代码
[code="javascript"]
//EXTJS 2.2.1
function testSplitButton(){
var p = new Ext.Panel({html:'xxx',height:300,width:300})
new Ext.SplitButton({
renderTo: document.body,
text: 'Options',
menu: new Ext.menu.Menu({
items: [
new Ext.menu.Adapter(p)
]
})
});
}
[/code]
就是一个SplitButton,在它的menu里面放一个panel
3.0下测试的. 2.2需要通过adpater对panel包装成一个menuitem
示例代码:
[code="javascript"]
Ext.onReady(function(){
Ext.BLANK_IMAGE_URL = '/images/s.gif';
Ext.QuickTips.init();
testSplitButton();
});
function testSplitButton(){
new Ext.SplitButton({
renderTo: document.body,
text: 'Options',
menu: new Ext.menu.Menu({
items: [
{xtype:'panel',html:'xxx',height:300,width:300}
]
})
});
}
[/code]
他那个图中的功能没有使用最佳解决方案,生成的东西和ext的主题格格不入
extjs有自己的一套实现
请参考官网的示例
[url]http://www.extjs.com/deploy/dev/examples/menu/menus.html[/url]
基本上所有的可视化组件都能放进去.你可以再里面定义一个FormPanel
[code="js"]var menuTmp;
Ext.onReady(function(){
var textFieldMenu = new Ext.menu.Adapter(new Ext.form.TextField(),{hideOnClick: false});
var tb = new Ext.Toolbar();
tb.render('toolbar');
menuTmp=new Ext.menu.Menu({
items: [textFieldMenu]
});
tb.add({text:'Bug',
iconCls: 'bmenu',
menu: menuTmp});
});
[/code]