改进进度条在ExtJS中的价值

时间:2010-12-07 20:20:48

标签: extjs progress-bar

我试图改变ExtJS中进度条的值,

我像这样渲染进度条:

var simple = new Ext.FormPanel({
        labelWidth: 75, // label settings here cascade unless overridden
        url:'save-form.php',
        frame:true,
        title: 'myAPI',
        bodyStyle:'padding:5px 5px 0',
        width: 350,
        defaults: {width: 230},
        defaultType: 'textarea',

        items: [{
                fieldLabel: 'Record ',
                name: 'first',
                id: 'record1',
                allowBlank:false
            },{
                fieldLabel: 'Last Name',
                name: 'last'
            },{
                fieldLabel: 'Company',
                name: 'company'
            }, {
                xtype: 'dataview',
                name: 'email',
                vtype:'email'
            },{
                xtype: 'progress',
                name: 'mybar',
                id: 'mybar',
                value: bar
            }
        ],
        buttons: [{
            text: 'Start',
            handler: clicked
        },{
            text: 'Cancel'
        }]     
    });
    simple.render(document.body);

我正在尝试像这样更新进度条:

var mybar = Ext.get('mybar').updateProgress(bar);

但我在Chrome中得到这个:

未捕获的TypeError:对象[object Object]没有方法'updateProgress'

谢谢!

1 个答案:

答案 0 :(得分:4)

http://dev.sencha.com/deploy/dev/docs/?class=Ext

根据文件:

get(混合el):元素 检索Ext.Element对象。此方法不检索组件。此方法检索Ext.Element对象... 检索Ext.Element对象。

此方法不检索组件。此方法检索封装DOM元素的Ext.Element对象。要按ID检索Component,请使用Ext.ComponentMgr.get。

使用简单缓存来始终返回相同的对象。如果通过AJAX或DOM使用相同的id重新创建对象,则自动修复。

-

所以,只需使用Ext.ComponentMgr.get('mybar')。updateProgress

此外,updateProgress函数定义如下:

updateProgress([Float value],[String text],[Boolean animate]):Ext.ProgressBar