考虑以下情况。

在我的应用程序中有3个对话框。

final DialogBox alert1 = new DialogBox();
final DialogBox alert2 = new DialogBox();
final DialogBox alert3 = new DialogBox();


然后我打电话来显示这些对话框

alert1.show();
alert2.show();
alert3.show();


这是我的问题:

无论我调用show()函数的顺序如何,我总是希望在顶部显示alert2。截至目前,alert1显示在顶部,警报2在中间,alert3在后面。

通过三个对话框快速查找问题。





几乎没有CSS知识,试图为Z-index设置alert2

DOM.setIntStyleAttribute(alert.getElement(), "zIndex", 101);


仍然知道效果。它显示在同一位置,无法单击alert2上的链接

感谢任何提示。

最佳答案

问题似乎出在DialogBox的模式功能上(从继承的PopupPanel继承)。默认情况下,它防止对话框未包含的窗口小部件的鼠标和键盘事件。因此,由于alert3已显示在最后,因此它将禁用alert2事件。

如果要禁用模式属性的对话框,请将模式设置为false:

 alert1.setModal(false);


或调用此构造函数:

 final DialogBox alert1 = new DialogBox(true, false);

09-28 02:28