`

SmartGwt中ListGrid的扩展

 
阅读更多

SmartGwt中ListGrid可以通过扩展各种方法来扩展ListGrid表格的特性,通过扩展creatRecordComponents()方法可以在某个单元格上扩展为ImgButton或者Img等,通过扩展为Label可以实现SmartGwt中的提示Hint的效果(SmartGwt默认单元格上是无法使用hint信息的,虽然有setPromt("")方法,但是不起作用。)如下代码所示,就是在单元格上放了ImgButton

 

  1.   public void onModuleLoad() {  
  2.   
  3.         final ListGrid countryGrid = new ListGrid() {  
  4.             @Override  
  5.             protected Canvas createRecordComponent(final ListGridRecord record, Integer colNum) {  
  6.   
  7.                 String fieldName = this.getFieldName(colNum);  
  8.   
  9.                 if (fieldName.equals("iconField")) {  
  10.                     HLayout recordCanvas = new HLayout(3);  
  11.                     recordCanvas.setHeight(22);  
  12.                     recordCanvas.setAlign(Alignment.CENTER);  
  13.                     ImgButton editImg = new ImgButton();  
  14.                     editImg.setShowDown(false);  
  15.                     editImg.setShowRollOver(false);  
  16.                     editImg.setLayoutAlign(Alignment.CENTER);  
  17.                     editImg.setSrc("silk/comment_edit.png");  
  18.                     editImg.setPrompt("Edit Comments");  
  19.                     editImg.setHeight(16);  
  20.                     editImg.setWidth(16);  
  21.                     editImg.addClickHandler(new ClickHandler() {  
  22.                         public void onClick(ClickEvent event) {  
  23.                             SC.say("Edit Comment Icon Clicked for country : " + record.getAttribute("countryName"));  
  24.                         }  
  25.                     });  
  26.   
  27.                     ImgButton chartImg = new ImgButton();  
  28.                     chartImg.setShowDown(false);  
  29.                     chartImg.setShowRollOver(false);  
  30.                     chartImg.setAlign(Alignment.CENTER);  
  31.                     chartImg.setSrc("silk/chart_bar.png");  
  32.                     chartImg.setPrompt("View Chart");  
  33.                     chartImg.setHeight(16);  
  34.                     chartImg.setWidth(16);  
  35.                     chartImg.addClickHandler(new ClickHandler() {  
  36.                         public void onClick(ClickEvent event) {  
  37.                             SC.say("Chart Icon Clicked for country : " + record.getAttribute("countryName"));  
  38.                         }  
  39.                     });  
  40.   
  41.                     recordCanvas.addMember(editImg);  
  42.                     recordCanvas.addMember(chartImg);  
  43.                     return recordCanvas;  
  44.                 } else if (fieldName.equals("buttonField")) {  
  45.                     IButton button = new IButton();  
  46.                     button.setHeight(18);  
  47.                     button.setWidth(65);                      
  48.                     button.setIcon("flags/16/" + record.getAttribute("countryCode") + ".png");  
  49.                     button.setTitle("Info");  
  50.                     button.addClickHandler(new ClickHandler() {  
  51.                         public void onClick(ClickEvent event) {  
  52.                             SC.say(record.getAttribute("countryName") + " info button clicked.");  
  53.                         }  
  54.                     });  
  55.                     return button;  
  56.                 } else {  
  57.                     return null;  
  58.                 }  
  59.   
  60.             }  
  61.         };  
3
0
分享到:
评论
1 楼 wuyufeixue 2010-10-12  
 

相关推荐

    smartgwt-1.3

    SmartGWT是基于Google Web Toolkit (GWT) 的扩展,它提供了丰富的用户界面组件和高级功能,旨在简化开发人员的工作流程,提高Web应用的用户体验。 1. **SmartGWT概述** - SmartGWT是一个开源项目,由Intersystems...

    smartgwt官方实例

    8. **国际化和本地化**:SmartGWT支持多语言应用,你可以从实例中学习如何设置和切换不同的语言环境。 9. **性能优化**:SmartGWT提供了很多工具和策略来优化应用程序的性能,例如延迟加载、缓存策略等。通过分析...

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

    SmartGWT开发通常在Eclipse中进行,因为它提供了对GWT的内置支持。安装完成后,启动Eclipse并安装GWT插件。这可以通过Eclipse的"Help" > "Eclipse Marketplace"菜单完成,搜索“Google Plugin for Eclipse”并按照...

    SmartGwt学习文档

    在SmartGwt的学习过程中,首先需要理解GWT的基本概念。GWT是一个开源工具,允许开发者使用Java语言编写前端代码,然后自动编译为高效的JavaScript。GWT提供了编译器、API和开发工具,使得开发者可以在Java环境中进行...

    smartGWT 3.1 最新版本

    在实际开发中,SmartGWT 3.1不仅提供了强大的工具集,还鼓励开发者通过继承和扩展已有组件来创建自定义控件,以满足特定项目需求。同时,框架还支持MVP(Model-View-Presenter)架构模式,有助于实现清晰的代码组织...

    SmartGWT2.0 API

    SmartGWT 2.0 API 是一款基于Google Web Toolkit (GWT) 2.0的高级组件库,它为开发者提供了丰富的用户界面组件和强大的功能,以构建高性能、交互式的Web应用程序。SmartGWT 2.0 在其前身的基础上进行了多方面的改进...

    SmartGWT 12.0

    SmartGWT 是基于GWT的扩展,它不仅简化了GWT的使用,还增加了许多预定义的组件和功能。通过使用SmartGWT,开发者可以快速创建功能丰富的Web应用,无需深入了解底层HTML、CSS或JavaScript。 2. **UI组件库** smart...

    基于Maven的SmartGWT项目示例

    结合Maven和SmartGWT,开发者可以创建一个高效的开发流程:在pom.xml文件中声明SmartGWT和其他依赖,Maven会自动下载并管理这些依赖。然后,开发者可以使用SmartGWT的API来设计和实现用户界面,而Maven则负责构建和...

    smartgwt2.4 最新发布

    在SmartGWT 2.4的最新发布中,我们可以预期一些关键的更新和改进。首先,性能优化是每次版本迭代的重要部分,SmartGWT 2.4很可能包含了更快的页面加载速度、更好的内存管理和响应时间提升,这将为用户带来更加流畅的...

    smartGwt学习笔记

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

    smartGWT最新zip

    在实际开发中,SmartGWT的组件库极大地简化了前端界面的开发,让开发者无需深入理解JavaScript和CSS的细节,就能创建出美观且响应式的用户界面。同时,由于其基于GWT,开发者还可以利用GWT的特性,如编译时的类型...

    smartgwt5.0

    SmartGWT 从 2008 年开始开发,一直处在非常活跃的发展状态中。2009 年 12 月正式发布了 2.0 版,已经成为一个成熟的 Web 2.0 开发框架。 SmartGWT 不仅仅是“又一个 Web 控件库”,它最大的特色在于提供了整合...

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

    ### SmartGWT 快速开发文档 (Quick ...通过遵循本指南中的建议,开发者可以充分利用 SmartGWT 的强大功能,快速构建出高性能、高可用性的企业级 Web 应用程序。无论是初学者还是经验丰富的开发者,都能够从中受益匪浅。

    SmartGWT 入门 SmartGWT 入门

    自从 **GWT** 发布以来,它吸引了大量的Java开发者进入Web开发领域,并激发了一系列基于GWT的扩展库的诞生。其中,**SmartGWT** 凭借其强大的功能和易用性脱颖而出。 **SmartGWT** 实际上是对 **SmartClient** Ajax...

    smartGWT

    在描述中提到的博文链接指向了ITEYE博客上的一篇文章,虽然具体内容未给出,但我们可以推测这篇博客可能详细介绍了如何使用SmartGWT进行开发,可能包括了示例代码、最佳实践或者常见问题的解决方法。 标签“源码”...

    smartgwt + spring + hibernate

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

    smart GWT 3.1

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

    smartgwt最新版本GWT的DEMO

    10. **自定义组件**:SmartGWT允许开发者扩展或创建自定义组件,DEMO中会介绍这个过程。 通过深入研究这个"smartgwt最新版本GWT的DEMO",开发者不仅可以熟悉SmartGWT和GWT的基本使用,还能掌握构建复杂RIA应用的...

    SmartGwt 之原生 Desktop(与gxt无关)

    在 SmartGwt 中,原生的 Desktop 功能是一个强大的特性,它允许开发者创建类似桌面应用的用户体验,而无需依赖于 GXT(Google Web Toolkit)库。这篇内容将深入探讨 SmartGwt 的原生 Desktop 实现,以及如何利用这一...

    smartgwt 分页grid

    SmartGWT的`ListGrid`支持虚拟化,通过设置`isScrolling`属性为`true`和`useVirtualScrolling`为`true`来启用。 6. **响应式设计**:为了适应不同设备和屏幕尺寸,我们可以利用SmartGWT的响应式布局(Responsive ...

Global site tag (gtag.js) - Google Analytics