2010-03-10 115 views
6

我想从另一个子窗口打开一个子窗口。也就是说,我在该窗口中有一个弹出式子窗口,我放置了一个按钮。如果我们单击该按钮,另一个弹出式子窗口应该打开。当我尝试这个我得到错误,“java.lang.IllegalArgumentException:您只能在应用程序级别的窗口内添加窗口。”任何人都可以告诉我如何在vaadin中解决这个问题。如何从vaadin的另一个子窗口中打开新的子窗口?

回答

12

您需要对应用程序的主窗口进行引用,并为其添加子窗口。

yourCurrentSubWindow.getApplication().getMainWindow().addWindow(myNewSubWindow); 

希望这会有所帮助。

+0

在我来说,我想同我与传递给我的CustomComponent参考,并试图从那里添加窗口:refToApplicaiton.getMainWindow()。 addWindow(myNewSubWindow);但我得到同样的错误。任何想法? – javydreamercsw 2011-10-24 21:55:38

3

只是一个小修正之前的解决方案:

yourCurrentSubWindow.getApplication().getMainWindow().addWindow(myNewSubWindow); 

那些DIV-基地嵌入式子窗口不能包含子窗口,但主窗口(以及任何其他顶级机窗口)即可。

0

在Vaadin 7这是可以做到如下:

getUI().addWindow(myNewSubWindow); 
相关问题