2013-03-12 40 views
0

我已经扩展PopupPanel,我试图获取的玻璃/识破效应来工作 这里是我的类无法获得GWT弹出面板玻璃效果的工作

import com.google.gwt.user.client.Timer; 
import com.google.gwt.user.client.ui.*; 

public class MyPopup extends PopupPanel 
{ 
private static Label label = new Label(); 

public MyPopup() 
{ 
    super(true); 
    setWidget(label); 
} 

public static void showToast(String message, int time) 
{ 
    final MyPopup popup = new MyPopup(); 
    label.getElement().setId("mypopupID"); 
    popup.setGlassEnabled(true); 
    label.setText(message); 
    popup.show(); 

    Timer timer = new Timer() 
    { 
     @Override 
     public void run() 
     { 
      popup.hide(); 
     } 
    }; 

    timer.schedule(time); 
} 
} 

我只是叫showToast和这个作品正如预期的那样,但看起来像一个普通的旧面板,其背景是我在CSS中声明的颜色。 这是我的CSS

#mypopupID 
{ 
background-color: yellow; 
position:absolute; 
left:130px; 
top:50px; 
width: 300px; 
} 

任何想法如何让这个工作?梦想是让淡入淡出的动画工作,但首先要做的很少。

回答

2

setGlassEnabled(true)的“玻璃”效果不适用于弹出窗口本身,而是适用于它后面的任何内容。如果你想弹出窗口本身是透明的,也许你可以尝试玩“不透明”CSS属性。

+0

在面板上将玻璃效果设置为true时查看文档,在窗格变为可见之前,玻璃窗格应该覆盖该阶段存在于用户界面上的所有面板/窗口小部件。我没有从文档中看到我必须对弹出式子部件进行微调。由于目前只有我的标签显示弹出窗口时,我可能会忘记弹出窗口,并将标签附加到我的根面板并显示/隐藏它。没有看到将它放在弹出式面板上的意义。 – MayoMan 2013-03-13 08:53:18