我有一个 GWT 小部件,它是一个窗口。用户可以拖放窗口。我正在使用一个名为 GWT-Ext 的旧 API。它有能力实现一个监听器来检测窗口何时被移动。我想通过检测窗口的 XY 坐标并在窗口“越界”时将窗口放回原始位置来防止窗口隐藏在浏览器栏下。如何确定浏览器栏的 XY 坐标,以便知道我的窗口是否被浏览器栏遮挡?
user195488
问问题
247 次
2 回答
1
浏览器栏始终位于 0。但您必须考虑文档的滚动位置,因此实际上它位于Document.get().getScrollTop()
.
于 2013-01-28T16:23:30.833 回答
0
我确定浏览器栏位于 0。所以我检查我的 Y 位置是否小于 0,然后调用.setPagePosition
.
this.addListener(new PanelListenerAdapter()
{
@Override
public void onMove(BoxComponent component, int x, int y)
{
// prevent user from accidentally dragging window under browser bar
if (y <= 0)
{
component.setPagePosition(DEFAULT_X_POS, DEFAULT_Y_POS);
}
}
});
于 2013-01-30T13:15:10.257 回答