`
SimonLei
  • 浏览: 176134 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SmartGwt 之原生 Desktop(与gxt无关)

阅读更多

前几天尝试了一下将 extjs的gwt封装即gxt的desktop与Smartgwt绑定在一起,

效果还不错,不过有几个问题:

 

  1. 引入两个gwt的扩展,相互之间的js/css可能会有冲突
  2. 如果在项目中使用,会增加学习成本。
  3. 在gxt里面添加smartgwt的控件,有可能会出现问题。
  4. gxt 的 desktop 扩展起来麻烦。我的需求是要增加一个搜索框,就比较难实现。
  5. 换肤的话,要同时换两套,会比较麻烦,而且风格不一致
基于这些原因,我还是想自己搞一套desktop。
其实也简单,模仿gxt的desktop,搞出这么几个类:Desktop, Shortcut, TaskBar
其中还曾经试图模仿mac os的fisheye效果,做出了一个dock,不过发现很丑,就放弃了。
还是走了老路子,感觉还凑合。
使用的方式也差不多,创建一个Desktop实例,就会自动添加到RootPanel上去了。
    public void onModuleLoad() {
        initDebugConsole();
        initErrorHandler();
        desktop = new Desktop();
        createMenuAndShortcut(desktop.getTaskBar());
    }

    private void createMenuAndShortcut(TaskBar taskBar) {
        DesktopWindow contactWindow = new ContactPersonSubPanel();
        DesktopWindow documentWindow = new DocumentManagePanel();
        DesktopWindow notesWindow = new NotesSubPanel();
        DesktopWindow calendarWindow = new CalendarManagePanel();

        ToolStrip quickBar = taskBar.getQuickStartBar();

        createMenuAndShortcut(contactWindow, quickBar);
        createMenuAndShortcut(documentWindow, quickBar);
        createMenuAndShortcut(notesWindow, quickBar);
        createMenuAndShortcut(calendarWindow, quickBar);
        quickBar.addSeparator();

        DynamicForm form = createSimpleForm();
        form.setAlign( Alignment.CENTER);
        form.setLayoutAlign( VerticalAlignment.CENTER);
        form.setFields(createSearchItem(), createStyleSelectItem());
        quickBar.addMember( form);
        
        quickBar.addSeparator();
        createSystemButtons(quickBar);
        quickBar.addSeparator();
    }
 
之所以有一个DesktopWindow,是为了增加一些window状态管理的控制,区别不大。
和gxt的desktop的区别在于,没有做StartMenu,感觉我的应用没有那么多入口,
只有几个快捷方式,然后在taskbar 上增加了一些系统配置的按钮,以及搜索框和
换肤选择框。效果如下图所示:


 
源码见附件,不保证能用,不提供技术支持。

 

  • 大小: 197.2 KB
1
0
分享到:
评论

相关推荐

    smartgwt官方实例

    2. **数据绑定**:SmartGWT支持自动的数据绑定,使得UI组件可以与后台数据源(如数据库或Web服务)进行交互。通过实例,你可以学习如何实现数据的动态加载、更新和保存。 3. **事件处理**:事件驱动编程是GUI开发的...

    SmartGwt学习文档

    在实际项目中,SmartGwt通常与MVC(Model-View-Controller)设计模式结合使用,帮助开发者组织代码,实现良好的模块化和可维护性。同时,SmartGwt也兼容其他流行的开发框架和库,如Spring、Hibernate等,方便整合到...

    SmartGWT2.0 API

    首先,SmartGWT的核心特性之一是其丰富的组件集。这些组件包括但不限于表格、树、表单、面板、图表以及各种自定义小部件。它们都经过精心设计,具有丰富的样式和配置选项,可以轻松满足多种设计需求。例如,`...

    smartgwt-1.3

    - SmartGWT是一个开源项目,由Intersystems公司维护,它将GWT的灵活性与企业级功能相结合。 - 该框架提供了大量的UI组件,如表格、树形视图、图表、表单等,以及数据绑定和自动化验证功能。 - 通过使用SmartGWT,...

    基于Maven的SmartGWT项目示例

    本示例项目“基于Maven的SmartGWT项目”就是这样的一个实践,它结合了两个强大的技术:Maven作为项目管理和构建工具,以及SmartGWT作为前端UI框架。下面我们将深入探讨这两个技术以及它们如何协同工作。 首先,...

    SmartGWT 12.0

    SmartGWT库的核心在于它将Google Web Toolkit (GWT) 的优势与智能组件模型相结合,为开发者提供了丰富的UI组件、强大的数据管理工具以及高效的异步通信机制。 1. **SmartGWT 框架** SmartGWT 是基于GWT的扩展,它...

    smartGWT 3.1 最新版本

    - **数据绑定**:SmartGWT支持数据驱动的开发,允许开发者轻松地将后台数据与UI组件进行绑定,实现动态更新和实时交互。 - **异步通信**:利用GWT的异步RPC机制,SmartGWT可以实现高效的服务器通信,无须刷新整个...

    smartGWT最新zip

    SmartGWT是一个强大的Java库,专门用于构建富互联网应用程序(RIA)。它基于Google Web Toolkit (GWT) 平台,并提供了丰富的用户界面组件和优化工具,使得开发人员能够轻松创建功能丰富的、交互性强的Web应用。GWT...

    smartGWT开发环境搭建(完整工程)

    SmartGWT是一个强大的Java框架,用于构建富互联网应用程序(RIA)。它基于Google Web Toolkit (GWT) 并扩展了其功能,提供了丰富的组件库和高级的UI设计工具。本教程将详细阐述如何搭建SmartGWT的开发环境,以及如何...

    smartgwt2.4 最新发布

    SmartGWT 2.4 是一个强大的开源框架,主要用于构建企业级的富互联网应用程序(Rich Internet Applications,简称RIA)。这个框架基于Google Web Toolkit (GWT) 并且扩展了其功能,提供了丰富的组件库和高级特性,...

    smartGwt学习笔记

    在SmartGWT的学习和开发过程中,经常会遇到各种挑战和问题,比如本文提到的“分页问题GridPager”。SmartGwt是一个强大的Java库,用于构建基于Web的用户界面,它提供了丰富的组件,包括ListGrid,一个功能强大的表格...

    smartgwt5.0

    SmartGWT 是封装了 SmartClient 的 GWT API。而 SmartClient 是一个开源的企业级 Ajax 开发框架。 Google Web Toolkit 的发布,大大降低了 Java 开发人员进行 Web 开发的门槛。然而 GWT 本身提供的控件及功能相对...

    smartgwt + spring + hibernate

    SmartGWT + Spring + Hibernate 是一个常见的企业级应用开发组合,它们各自在Web应用程序开发中扮演着重要角色。SmartGWT是基于GWT(Google Web Toolkit)的一个强大的UI库,提供丰富的用户界面组件和高性能的...

    smartGWT

    "SmartGWT"是一个强大的Java库,用于构建企业级的Web应用程序。它基于Google Web Toolkit (GWT) 并提供了一系列高级组件和功能,旨在简化开发过程,提高开发效率。SmartGWT尤其适合那些需要创建数据密集型、交互性强...

    smart GWT 3.1

    SmartGWT 是封装了 SmartClient 的 GWT API。SmartGWT 有如下特色: 丰富的控件。很多较为复杂的常用界面都被包装成简单易用的控件。比如可 编辑的树形表格、查询常用的过滤器创建器和类似 Google Calendar 的日历...

    SmartGWT 入门 SmartGWT 入门

    ### SmartGWT 入门详解 #### 一、SmartGWT 概述 **SmartGWT** 是一款基于 **Google Web Toolkit (GWT)** 的高级Web应用开发框架,旨在简化企业级Web 2.0应用的开发过程。自从 **GWT** 发布以来,它吸引了大量的...

    SmartGWT 快速开发文档(Quick Start Guide)

    ### SmartGWT 快速开发文档 (Quick Start Guide) 关键知识点详解 #### 一、文档概述 **SmartGWT** 是一款强大的基于 Java 的 Web 应用前端框架,它支持构建高性能的企业级应用程序。本快速开发文档为 SmartGwtEE ...

    smartgwt 培训ppt

    有关于smartgwt 开发的ppt,高级开发的应用。

    smartgwt-2.0API.CHM

    smartgwt-2.0API.CHM 2009年12月18日 ... SmartGWT 2.0发布下载了

Global site tag (gtag.js) - Google Analytics