Extjs 手风琴布局
下面的代码包含手风琴布局中的网格。在网格的一列中的组合框中面临问题 在这个小示例中,我在中央面板中添加了一个Extjs 手风琴布局,extjs,Extjs,下面的代码包含手风琴布局中的网格。在网格的一列中的组合框中面临问题 在这个小示例中,我在中央面板中添加了一个id,然后在菜单项的处理函数中使用此代码显示更新 Ext.Loader.setConfig({ enabled: true }); var combStore = []; combStore.push([0,"data1"]) ; combStore.push([1,"data2"]) ;
id
,然后在菜单项的处理函数中使用此代码显示更新
Ext.Loader.setConfig({
enabled: true
});
var combStore = [];
combStore.push([0,"data1"]) ;
combStore.push([1,"data2"]) ;
combStore.push([3,"data3"]) ;
combStore.push([4,"data4"]) ;
var data = [
{string :"sdsdsds" ,number : 0 , comb:0},
{string :"retee" ,number : 1, comb:1},
{string :"klnknk" ,number : 2, comb:4}
] ;
Ext.application({
name: 'MyApp',
launch: function() {
Ext.define('myModel', {
extend: 'Ext.data.Model',
fields: [
'string',
'number',
'comb'
]
});
var store = Ext.create('Ext.data.Store', {
autoDestroy: true,
model:'myModel',
proxy: {
type: 'memory'
},
data: data
});
var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', {
clicksToMoveEditor: 1,
autoCancel: false
});
var userCombo = new Ext.form.ComboBox({
store: combStore
});
Ext.util.Format.comboRenderer = function(combo) {
return function(value) {
var record = combo.findRecord(combo.valueField, value);
return record ? record.get(combo.displayField)
: combo.valueNotFoundText;
}
};
Ext.create('Ext.panel.Panel', {
title: 'Accordion Layout',
width: 600,
height: 600,
defaults: {
bodyStyle: 'padding:15px'
},
layout: {
type: 'accordion',
titleCollapse: false,
animate: true,
activeOnTop: true
},
items: [
{
xtype: 'gridpanel',
title: 'My Grid Panel',
store: store,
columns: [
{
xtype: 'gridcolumn',
dataIndex: 'string',
text: 'String'
}, {
xtype: 'numbercolumn',
dataIndex: 'number',
text: 'Number'
} ,
{
xtype: 'actioncolumn',
text: 'comments' ,
items: [{
icon: 'images/abc.jpg', // Use a URL in the icon config
tooltip: 'Edit',
handler: function(grid, rowIndex, colIndex) {
Ext.create('Ext.window.Window', {
title: 'Hello',
height: 200,
id:'commentWindow',
width: 400,
layout: 'fit',
items: {
xtype: 'form',
frame: true,
items: [
{fieldLabel: 'Comments' ,
name:'commentLabel'
},
{fieldLabel: 'Comments',
xtype: 'textareafield',
name: 'textfield1',
value: 'Text field value' ,
flex:2
}
],
store: Ext.create('Ext.data.ArrayStore', {}) // A dummy empty data store
} ,
buttons: [{
text: 'submit' ,
handler: function(){
alert('submitted');
Ext.getCmp('commentWindow').close();
}
},{
text: 'Cancel' ,
handler: function(){
Ext.getCmp('commentWindow').close();
}
}]
}).show();
}
}]
} ]
} ,{
xtype: 'tabpanel',
title: 'Tb Grid Panel',
id:'tabbedPanel' ,
items: [ {
xtype: 'gridpanel',
id:'keyM',
title: 'My Grid Panel',
plugins: [
rowEditing
],
store: store,
columns: [
{
xtype: 'gridcolumn',
dataIndex: 'string',
text: 'String'
}, {
xtype: 'numbercolumn',
dataIndex: 'number',
text: 'Number'
}, {
xtype: 'gridcolumn',
dataIndex: 'comb',
text: 'ComboData',
renderer: Ext.util.Format.comboRenderer(userCombo)
, editor : {
id:'cc',
xtype:'combobox',
store: combStore
}
}]
} ,{
title: 'Ajax Tab 1',
html: '<div>Hello World</div>'
},{
title: 'Ajax Tab 2',
html: '<div>Hello World</div>'
},{
title: 'Event Tab',
listeners: {
activate: function(tab){
setTimeout(function() {
alert(tab.title + ' was activated.');
}, 1);
}
},
html: "I am tab 4's content. I also have an event listener attached."
},{
title: 'Disabled Tab',
disabled: true,
html: "Can't see me cause I'm disabled"
}
]
}
],
renderTo:document.body
});
var map = new Ext.util.KeyMap({
target: "keyM",
binding: [{key: "c", // or Ext.EventObject.ENTER
ctrl:true,
shift:false ,
fn: function(){ alert('Control + shift + tab was pressed.'); },
scope: this
}]
});
}
});
Ext.Loader.setConfig({
已启用:true
});
var combStore=[];
combStore.push([0,“data1]”);
combStore.push([1,“data2]”);
push([3,“data3]”);
push([4,“data4]”);
风险值数据=[
{字符串:“SDSDS”,编号:0,梳号:0},
{字符串:“retee”,编号:1,梳:1},
{字符串:“klnknk”,编号:2,梳:4}
] ;
Ext.application({
名称:“MyApp”,
启动:函数(){
Ext.define('myModel'{
扩展:“Ext.data.Model”,
字段:[
'字符串',
“数字”,
“梳子”
]
});
var store=Ext.create('Ext.data.store'{
自动销毁:对,
模型:'myModel',
代理:{
键入:“内存”
},
数据:数据
});
var rowEditing=Ext.create('Ext.grid.plugin.rowEditing'{
单击移动编辑器:1,
自动取消:错误
});
var userCombo=new Ext.form.ComboBox({
商店:康姆商店
});
Ext.util.Format.comboRenderer=函数(组合){
返回函数(值){
var记录=combo.findRecord(combo.valueField,value);
返回记录?记录.get(combo.displayField)
:combo.valueNotFoundText;
}
};
Ext.create('Ext.panel.panel'{
标题:“手风琴布局”,
宽度:600,
身高:600,
默认值:{
车身风格:“衬垫:15px”
},
布局:{
类型:“手风琴”,
标题:假,
动画:对,
activeOnTop:对
},
项目:[
{
xtype:“gridpanel”,
标题:“我的网格面板”,
店:店,,
栏目:[
{
xtype:'gridcolumn',
数据索引:“字符串”,
文本:“字符串”
}, {
xtype:'numbercolumn',
dataIndex:'编号',
文本:“数字”
} ,
{
xtype:'actioncolumn',
文本:“评论”,
项目:[{
图标:“images/abc.jpg”,//在图标配置中使用URL
工具提示:“编辑”,
处理程序:函数(网格、行索引、colIndex){
Ext.create('Ext.window.window'{
标题:“你好”,
身高:200,
id:'commentWindow',
宽度:400,
布局:“适合”,
项目:{
xtype:'表单',
框架:对,
项目:[
{fieldLabel:'注释',
名称:'commentLabel'
},
{fieldLabel:'注释',
xtype:'textareafield',
名称:“textfield1”,
值:“文本字段值”,
弹性:2
}
],
store:Ext.create('Ext.data.ArrayStore',{})//一个伪空数据存储
} ,
按钮:[{
文本:“提交”,
处理程序:函数(){
警报(“已提交”);
Ext.getCmp('commentWindow').close();
}
},{
文本:“取消”,
处理程序:函数(){
Ext.getCmp('commentWindow').close();
}
}]
}).show();
}
}]
} ]
} ,{
xtype:'tabpanel',
标题:“Tb网格面板”,
id:“选项卡面板”,
项目:[{
xtype:“gridpanel”,
id:'keyM',
标题:“我的网格面板”,
插件:[
划船编辑
],
店:店,,
栏目:[
{