1

如何在 senchatouch 中为 Ext.Msg.show 设置不同的位置。我尝试过使用这些方法

msg.getDialog().getPositionEl().setTop(50);

&

msg.getDialog().setPosition(undefined,50)

但是我收到一个错误Object [object Object] has no method 'getPositionEl'Object [object Object] has no method 'getDialog'.

我什至在 sencha 的 MessageBox.js 文件中检查了这些方法,但它们不存在。

然而,几乎网上的解决方案似乎都推荐这些方法。专家您能否建议。

4

1 回答 1

1

left您可以通过指定和top配置选项将消息框放置到特定位置。

launch: function() {
    var msg = Ext.Msg.show({
            title:'Some title',
            message:'Sample message container.',
            left:50, // mention initial positioning with left and top config.
            top:50,
            buttons:[{  //create as many buttons you want. 
                text:'Ok',
                ui:'action',
                handler:function(btn){
                    if(msg.getTop() == 200) // Just for demo. Click Ok and place msg box to some other position. If clicked again, hide message box
                        msg.hide();
                    else{
                        msg.setTop(200); 
                        msg.setLeft(200);
                    }
                }
            }]
    });
}

除了配置选项,您还可以将消息框与setTop()setLeft()方法对齐。

请参阅演示。如您所见,消息框没有放置在中心,因为它的默认位置是中心,而是放置在顶部和左侧设置为 50。

于 2013-04-08T17:30:48.923 回答