2010-09-02 41 views
1

我有一个用GWT编写的小部件。在EntryPoint的实现中,我已经加载了一个控制器和一个与该控制器绑定的视图。我将这个视图添加到RootPanel并且它工作正常。如何在GWT中切换到不同的视图和控制器?

public class EntryImpl implements EntryPoint { 

    SimplePanel simplePanel; 
    View view; 
    Controller controller; 
    public final void onModuleLoad() 
    { 
     controller = createController(); 
     view = createViewForController(controller); 
     simplePanel = new SimplePanel(); 
     simplePanel.add(view); 
     RootPanel.get().add(simplePanel); 

    } 
} 

就像上面这样。现在我想改变视图和控制器,比如说用户点击一个按钮来加载不同的视图。我试图沿着添加锚和处理ClickEvent如下线的东西:

public void onClick(Widget sender) { 
    simplePanel.remove(view); 
    controller = createController(); 
    view = createViewForController(controller); 
    panel.add(view); 
} 

这是去这样做的正确的方式,或者是有没有更好的办法?到目前为止,这不适合我 - 我的新观点没有出现。

由于

回答

1

可以使用DeckPanel切换,并使用showWidget(index)方法的图。启用甲板面板的动画可以提高可用性。

0

什么是OnClick事件中的面板?如果你只是想看到视图,你可以得到根面板,并看到它的RootPanel.get()。添加(视图),在基本的HTML页面添加一个div可以为您的目的,如果你有div可以添加你的视图该专区由RootPanel.get(“格”)内,加入(图)...

相关问题