我有一个带有一些弹出窗口的应用程序,为此我正在使用 GWT DialogBox。弹出窗口的内容可以改变,所以我需要调整弹出窗口的大小以适应内容。我最初是在创建时设置弹出窗口的高度,但如果更大,内容会显示在它外面。删除 setHeight,弹出窗口实际上会根据内容进行调整,但我在将弹出窗口居中时遇到问题。当内容发生变化时,我调用 popup.center(),但它并没有像我手动设置高度时那样真正居中。
我认为这是一个时间问题,因为我添加了一个侦听器以在调整窗口大小时将弹出窗口居中,在这种情况下,弹出窗口正确居中。
有任何想法吗?
更新:认为我发现了问题。弹出的内容包括一个表格。在显示表格内容之前触发 ResizeEvent,因此居中实际上是在考虑空表格的大小。我尝试添加一个 LoadingStateChangeHandler 以在状态为 LOADED 时触发 ResizeEvent,但它仍然触发得太早。