Показать сообщение отдельно
  #4 (permalink)  
Старый 10.11.2011, 20:40
С++/C# modest developer
Отправить личное сообщение для nekto_O Посмотреть профиль Найти все сообщения от nekto_O
 
Регистрация: 07.11.2011
Сообщений: 244

Вот, немного видоизменил, лучше не объявлять глобальную функцию, а сделать ее методом формы, однако метод add() у класса есть и называть его также - значит переопределить его, чего делать не стоит=)
проверил в ExtJS 4.0.1 - работает.
var myWIN = new Ext.Window({
		width: 500,
		title: 'Наше окошко',
		layout: 'fit',
		addField: function(){
			// Если версия ExtJS < 4, то
			//var frm = this.find('xtype', 'form')[0];
			// Если версия ExtJS >= 4, то
			var frm = this.down('form');
			frm.add({
				xtype: 'textfield',
				fieldLabel: 'Текстовое итое',
				name: 'text',
				width: 300,
				allowBlank: false
			});
			this.doLayout();
		},
		modal: true,
		items: [
			{
				xtype: 'form',
				items:[
					{
						xtype:'textfield',
						fieldLabel: 'Текстовое поле',
						name: 'text1'
					},{
						xtype: 'container',
						layout: 'hbox',
						items: [
							{
								xtype:'textfield',
								fieldLabel:'Текстовое поле2',
								name:'text2'
							},{
								xtype: 'button',
								text: 'GO',
								handler: function(){
									myWIN.addField();
								}
							}
						]
					},{
						xtype: 'button',
						text: 'Кнопка'
					}
				]
			}
		]
	})
Ответить с цитированием