`

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开发环境搭建(完整工程)

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

    smartGWT 3.1 最新版本

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

    SmartGWTEE1.2 API

    SmartGWT API是SmartGWT框架的核心部分,这个框架是基于Google Web Toolkit (GWT)的扩展,旨在简化开发人员在Java环境中创建富互联网应用的过程。 1. **SmartGWT介绍** SmartGWT是一个开源的Java库,它为GWT提供了...

    一个smart+struts2的例子

    3. 将Struts2的Result返回到SmartGWT的视图组件,如设置一个SmartGWT的ListGrid显示从服务器获取的数据。 4. 利用SmartGWT的事件监听机制,实现用户交互时的异步请求,更新视图或者向服务器发送数据。 5. 可能还涉及...

    GWT DEMO 增删改查

    在"TestSmartGWT"这个DEMO中,可能会使用SmartGWT库,它是GWT的一个扩展,提供了更丰富的组件和更高级的功能。例如,SmartGWT提供了`ListGrid`,这是一个强大的表格组件,可以实现复杂的表格操作。此外,`DataSource...

Global site tag (gtag.js) - Google Analytics