Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java GWT-DialogBox玻璃和Google Chrome-glass不会重新上漆_Java_Gwt_Google Chrome - Fatal编程技术网

Java GWT-DialogBox玻璃和Google Chrome-glass不会重新上漆

Java GWT-DialogBox玻璃和Google Chrome-glass不会重新上漆,java,gwt,google-chrome,Java,Gwt,Google Chrome,我刚刚安装了最新的GoogleChrome,并试图用DialogBox测试GWT2.3代码;出于某种原因,选项如setGlassEnabledtrue;以一种奇怪的方式工作: 如果chrome的滚动窗格y位置为0,则玻璃喷漆正确 但如果 chrome的滚动窗格y位置>0,然后玻璃保持在0位置,因此chrome的休息底部没有玻璃覆盖: 我将展示我的构造器第一个玻璃选项 ... public MyDIalog() { this.setGlassEnabled(true);

我刚刚安装了最新的GoogleChrome,并试图用DialogBox测试GWT2.3代码;出于某种原因,选项如setGlassEnabledtrue;以一种奇怪的方式工作:

如果chrome的滚动窗格y位置为0,则玻璃喷漆正确

但如果 chrome的滚动窗格y位置>0,然后玻璃保持在0位置,因此chrome的休息底部没有玻璃覆盖:

我将展示我的构造器第一个玻璃选项

...
public MyDIalog() {

        this.setGlassEnabled(true);
        this.setAnimationEnabled(true);
        this.setModal(true);
        this.setPreviewingAllNativeEvents(true);
...
我不太确定是什么导致了这个bug或其他东西,因为代码在IE和FF:S中运行良好

所以我猜在铬合金中,玻璃的位置总是静止的,它的位置总是静止的

x、 y{0,0}w,h{firstInitedWidth,firstInitedHeight}

所以我的问题是,chrome是否有一个漫游区


谢谢

奇怪。。。。但我认为最坏的情况是,你可以在css中给玻璃样式一些疯狂的高度/宽度

.gwt-PopupPanelGlass{
    height:15000 px;
    width:15000 px;
}

奇怪。。。。但我认为最坏的情况是,你可以在css中给玻璃样式一些疯狂的高度/宽度

.gwt-PopupPanelGlass{
    height:15000 px;
    width:15000 px;
}
已解决:

创建您自己的扩展PopupPanel的类,并添加以下内容:

    @Override
    public void setGlassEnabled(boolean enabled) {
        super.setGlassEnabled(enabled);
        Element glass = getGlassElement();
        if (glass != null) {
            glass.getStyle().setPosition(Position.FIXED);
        }
    }
这只是将玻璃面板的位置设置为“固定”,而不是“绝对”。这使得面板不会随着滚动而移动。

已解决:

创建您自己的扩展PopupPanel的类,并添加以下内容:

    @Override
    public void setGlassEnabled(boolean enabled) {
        super.setGlassEnabled(enabled);
        Element glass = getGlassElement();
        if (glass != null) {
            glass.getStyle().setPosition(Position.FIXED);
        }
    }

这只是将玻璃面板的位置设置为“固定”,而不是“绝对”。这使得面板不会随着滚动而移动。

作为一种替代方法,无需设置宽度和高度,您始终可以使用!重要指示

.gwt-PopupPanelGlass {
    position:fixed!important;
}

或者,不必设置宽度和高度,您始终可以使用!重要指示

.gwt-PopupPanelGlass {
    position:fixed!important;
}

打败我了。。。。我以前从未见过这种情况。我只是想,如果默认的glass保持在页面的顶部,那么它应该非常大,这样它就可以覆盖所有需要的内容。是的,它保持在顶部;:15000px是一个有趣的想法,但是为什么会发生静态效应呢?也许chrome需要GWT的其他功能?我认为GWT必须与铬完美配合,是吗?我只是想知道有没有办法让它以某种手动方式重新粉刷玻璃?我是说一个后期初始化还是什么?你怎么想?我不知道。。。。我以前从未见过这种情况。我只是想,如果默认的glass保持在页面的顶部,那么它应该非常大,这样它就可以覆盖所有需要的内容。是的,它保持在顶部;:15000px是一个有趣的想法,但是为什么会发生静态效应呢?也许chrome需要GWT的其他功能?我认为GWT必须与铬完美配合,是吗?我只是想知道有没有办法让它以某种手动方式重新粉刷玻璃?我是说一个后期初始化还是什么?你怎么想?这仍然是使用GWT 2.5.0和Chrome 24的情况。这仍然是使用GWT 2.5.0和Chrome 24的情况。这非常有趣。。。我还没有尝试过这个方法,但是有没有办法不每次重写该方法?@user592704是的,只需创建自己的类而不是匿名类。但确切地说,它看起来像是来自Chrome的bug,因为它在Firefox中运行良好。GWT似乎将玻璃窗格的高度设置为根面板的高度,但如果没有完全显示,Chrome无法正确计算它,因为它有一个滚动条。这很有趣。。。我还没有尝试过这个方法,但是有没有办法不每次重写该方法?@user592704是的,只需创建自己的类而不是匿名类。但确切地说,它看起来像是来自Chrome的bug,因为它在Firefox中运行良好。GWT似乎将玻璃窗格的高度设置为根面板的高度,但如果没有完全显示,Chrome无法正确计算它,因为它有一个滚动条。