Windows的初始z-Index

时间:2016-12-13 10:44:19

标签: qooxdoo

当我在qooxdoo中创建一个新的模态窗口时,它的z-index为100000。 第二个窗口将获得10000索引,等等。

如何将初始值设置为1000?

2 个答案:

答案 0 :(得分:2)

自动zIndex分配由qx.ui.window.Manager实例完成。见http://www.qooxdoo.org/5.0.1/pages/desktop/window_management.html

qx.ui.window.Manager有一个私有成员_minZIndex,其值为10000.为了更改它,您必须从qx.ui.window.Manager派生自己的窗口管理器类并更改重写的构造函数中的值,如下所示:

qx.Class.define("qx.ui.window.MyManager",
{
  extend : qx.ui.window.Manager,

  construct : function() {
    this.base(arguments);
    this._minZIndex = 1000;
  }
}); 

(请根据您的需要更改课程路径qx.ui.window.MyManager

然后,您可以在创建第一个窗口之前使用以下代码替换应用程序的窗口管理器。在您的应用程序中,main被覆盖的qx.application.Standalone方法的开头就是一个好地方 (见:http://www.qooxdoo.org/devel/api/#qx.application.AbstractGui~main):

var oldWindowManager = this.getRoot().getWindowManager();
var desktop = oldWindowManager.getDesktop();
var windowManager = new qx.ui.window.MyManager();
windowManager.setDesktop(desktop);
this.getRoot().setWindowManager(windowManager);
qx.ui.core.queue.Widget.remove(oldWindowManager);
oldWindowManager.dispose();

答案 1 :(得分:0)

该窗口是qx.ui.core.Widget。它继承了zIndex属性。所以使用setZIndex http://www.qooxdoo.org/current/apiviewer/#qx.ui.core.Widget~setZIndex