2009-10-21 72 views
0

我想从另一个类(包含其他类)的onModuleLoad()方法中填充Horizo​​ntalPanel的右侧,以便使代码分开。从另一个类向GWT水平面板添加内容

我试图实现的是类似于PHP包括我可以改变另一个类中的代码,它只会影响右侧面板。

这个其他类是否必须是复合控件?或者我可以在创建Entry类时做类似的事情吗?

回答

0

我不确定是否意味着要在右侧面板上加载完全不同的GWT模块,或者只是想加载不同的类。我假设后者。

在这种情况下,一个GWT TabPanel,但定位垂直。这是一个DeckPanel和TabBarPanel的组合。在GWT中有可用的标准VerticalTabPanel,但您可以在开源的cobogw库中找到一个,请参阅http://www.cobogw.org。包含源代码的示例可以在演示页面上找到:http://cobogw.googlecode.com/svn/demo/WidgetsDemo.html#VerticalTabPanel

该示例还使用LazyPanel。这意味着每个类只有在用户点击链接时才被初始化,这使得启动速度更快。

0

只需将对horizo​​ntalpanel的引用添加到其他类(如控制器类或主面板类),然后从右侧面板调用此类。你甚至可以有一个保持了与方法这个静态horizo​​ntalpanel像

HorizontalPanel hPanel; //set this from on module load, or controller.create method for instance 
public static setRightContents(Panel panel){ 
hPanel.add(panel) 
} 

,只是称这与其他类Controller.setRightContents(myNewRightPanel)控制器类。

真的,你只需要停下来思考这是一个网站,并开始使用甚至驱动的编程思考更多的厚客户端应用程序。