0

我想将面板从下向上移动。顺利。为此,我尝试了这段代码。

Ext.define("mathmania.view.Main", {
extend: 'Ext.Panel',
requries: [
    'Ext.util.DelayedTask'
],
xtype: 'panel',
config: {
    autodestory: true,
    border: 1,
    html: 'test panel',
    bottom: 0,
    centered: true,
    padding: 10,
    margin: '2%',
    width: '95%',
    listeners: {
        painted: 'countdown'
    }
},
countdown: function()
{
    var task = Ext.create('Ext.util.DelayedTask', function() {
        this.setBottom(this.getBottom + 5);
        task.delay(100);
    });
    task.delay(0);
}

但每次它只工作一次而不是多次作为重复任务?为了顺利移动这个浮动面板,有没有更好的方法或者我在这段代码中缺少什么?

4

1 回答 1

1


我曾尝试使用 do-while 循环,Panel 现在移动了两次,但目标仍未实现。我想我在循环中缺少某个地方。
希望这会有所帮助。

        Ext.define("mathmania.view.Main", {
        extend: 'Ext.Panel',
        requries: [
            'Ext.util.DelayedTask'
        ],
        xtype: 'panel',
        config: {
            id: 'main1',
            autodestory: true,
            border: 1,
            html: 'test panel',
            bottom: 0,
            centered: true,
            padding: 10,
            margin: '2%',
            width: '95%',
            listeners: {
                painted: 'countdown'
            }
        },
        countdown: function()
        {
            var a=Ext.getCmp('main1');
            var i=0;
            var j=20;
            do{
              var task = Ext.create('Ext.util.DelayedTask', function() {
              a.setBottom(a.getBottom() + 10);
                task.delay(500);
                    });
               task.delay(1000);
               i++;
            }while(i<j)
        }
     });
于 2012-09-18T10:38:14.700 回答