在Enjo窗口加载上显示模态对话框

时间:2011-09-01 04:05:02

标签: modal-dialog webos enyo

我试图在窗口加载后立即显示ModalDialog,就像我的应用程序的许可协议一样。通过单击按钮触发它似乎工作正常,但是当我尝试这个时不起作用:

这是我的VFlexBox类的组件数组:

{ name: "theDialog", kind: "ModalDialog", components: [
    { content: "This is a Dialog Box" },
    { layoutKind: "HFlexLayout", pack: "center", components: [
    { name: "okayButton", kind: "Button", caption: "Okay" },
    { name: "closeButton", kind: "Button", caption: "Close" }
    ]}
]}

这就是我试图展示对话框的地方。

create: function() {
   this.inherited(arguments);
   this.$.theDialog.openAtCenter();
}

如果我放置了这个。$。theDialog.openAtCenter();在Button的onclick事件的处理程序中,它可以正常工作。

1 个答案:

答案 0 :(得分:5)

你有没有试过这个。$。theDialog.openAtCenter();在rendered()

这样的事情:

rendered: function() {
     this.$.theDialog.openAtCenter();
}

由于类型为“Control”,因此在创建UI元素时应调用渲染,因此应调用openAtCenter。