Extjs的form表单所有字段设置不可编辑

首先,这段代码在点编辑打开窗口的时候可以把form的所有字段都设置为不可编辑。

                            var form = getWinForm(grid);
                                 form.items.each(function(items) {
                                    items.items.each(function(item) {
                                                console.log(item);
                                                //item.setReadOnly(true);
                                                item.readOnly = true;
                                                item.fieldStyle = 'background:#E6E6E6';
                                            });
                                }); 
                                var url = '../../buyOrderSummaryInfo/update';
                                //var tbar=getTbar(form);
                                var win = openWin('采购订单详情', form, panel, url,grid);
                                updateBasic(purchaseRole, form, win, record);
    但是当点击窗口的一个button后,调用同样的代码却无效,求助怎么点击窗口的button后依然能把form所有字段设置成不可编辑

你这个代码是没有生产前修改的配置对象后在生成的吧,如果ext对象已经呈现到页面上,要使用组件的setDisabled方法

http://docs.sencha.com/extjs/4.1.3/#!/api/Ext.AbstractComponent-method-setDisabled