首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

GWT基础框架施用

2012-10-27 
GWT基础框架使用1. 我们通过 xxx.gwt.xml中的:entry-pointclasscom.huawei.iread.manager.frame.client

GWT基础框架使用
1. 我们通过 xxx.gwt.xml中的:
        <entry-point
                class='com.huawei.iread.manager.frame.client.ModuleEntryPoint' />中进入我们预置的类:ModuleEntryPoint'中的 public void onModuleLoad()方法

      
   2. 主要通过分配器来进行页面的调整
       
        2.1 dispatcher中添加控制器controneller.
        2.2 controneller中注册各种事件的处理方式
        2.3 跳转到制定的页面只需要调用dispatch(注册的事件)
 
  详细代码如下所示:
  onModuleLoad方法:
       Dispatcher.get().addController(new FrameController());                //分配器添加控制器
      Dispatcher.get().addController(new WorkController());
      Dispatcher.get().dispatch(new EventType(FrameEvents.INIT));           //跳转到init事件的处理


  3.FrameController控制器中注册事件:

    //控制持有一个视图对象 view
     view = new FrameView(this);
         
     // 给控制器添加注册的事件
     registerEventTypes(new EventType(FrameEvents.INIT));

    
    控制器拥有一个事件的集合(LIST),及需要覆盖 public void handleEvent(AppEvent event)方法:
   该方法即是处理注册事件的方法.一般在其中处理页面跳转
     @Override
    public void handleEvent(AppEvent event)
    {
        GWT.log("FrameController event:"+event.getType().getEventCode());

        //该方法就是初始化控制器所持有的view的初始化 其中再调用handleEvent方法
        forwardToView(view, event);
    }
  
  4.view 对象
   
     4.1持有一个viewPoint对象,该对象继承之LayoutContainer,即属于容器类对象
    @Override
    protected void handleEvent(AppEvent event)
    {
            GWT.log("frame view code:"+event.getType().getEventCode());
        if (event.getType().getEventCode() == FrameEvents.INIT)
        {
            viewPort = new Viewport();
            viewPort.setLayout(new BorderLayout());
           
           //构建画面
            Registry.register("viewport", viewPort);
            Registry.register("north", north);
            Registry.register("south", south);
            Registry.register("west", west);
            Registry.register("center", center);
            viewPort.repaint();

           //添加容器
            RootPanel.get().add(viewPort);           
        }
    }
 
    4.2持有一个控制器对象crontroller
     

5 Registry对象

   维护一个map,将一些公用的容器添加到application级别的map中
 

热点排行