`
bean-woo
  • 浏览: 134962 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

gwt 前端报表打印组件

    博客分类:
  • GWT
阅读更多

package com.appdev.bsf.common.client.report;

import com.appdev.bsf.common.client.resources.CommonResourcesGenerator;
import com.smartgwt.client.widgets.form.DynamicForm;
import com.smartgwt.client.widgets.form.fields.FormItemIcon;
import com.smartgwt.client.widgets.form.fields.SelectItem;
import com.smartgwt.client.widgets.form.fields.events.FormItemClickHandler;
import com.smartgwt.client.widgets.layout.HLayout;

/**
 *
 *  
 * @category 例子(事件里面相应代码)<br>
 *           DynamicForm form = event.getForm(); <br>
 *           String type = form.getValue("type").toString();//获取要导出报表的类型<br>
 *           OperatorDataSource dataSource
 *           =operatorListGrid.getOperatorDataSource();
 *           //获取当前对应显示ListGrid的DataSource<br>
 *           String criterias = dataSource.getCriterias().toString()
 *           .replace("{", "").replace("}", ""); //获取选择数据的条件<br>
 *           map,type,clsUrl这三个参数必须传 <br>
 *           Window.open(GWT.getModuleBaseURL() + "ReportServlet?map=" +
 *           criterias + "&type=" + type + "&clsUrl=" +
 *           Operator.class.getName(), "report", "sdfs");<br>
 *           //传参数的名字,Operator.class.getName()表示类路径
 */
public class GwtJasperReport extends HLayout {
    public GwtJasperReport(FormItemClickHandler formItemClickHandler) {
        setHeight(22);
        setWidth(180);

        ItemButton itemBtn = new ItemButton(formItemClickHandler);

        final DynamicForm df = new DynamicForm();
        df.setHeight(22);
        df.setWidth100();
        SelectItem item = new SelectItem("type", "报表类型");
        item.setWidth(125);
        item.setValueMap("PDF", "HTML", "Excel", "RTF");
        item.setDefaultValue("Excel");
        item.setIcons(itemBtn);
        df.setItems(item);

        addMember(df);
    }

    private class ItemButton extends FormItemIcon {
        public ItemButton(FormItemClickHandler clickHandler) {
            setSrc(CommonResourcesGenerator.generatorReportResource().export().getSafeUri().asString());
            setWidth(40);
            setHeight(22);
            setAttribute("hspace", 0);
            addFormItemClickHandler(clickHandler);
        }
    }
}

 

 

前端应用:

        GwtJasperReport report = new GwtJasperReport(new FormItemClickHandler() {

            @Override
            public void onFormItemClick(FormItemIconClickEvent event) {
                DynamicForm form = event.getForm();
                String type = form.getValue("type").toString();
                OperatorDataSource dataSource = operatorListGrid.getOperatorDataSource();
                String criterias = dataSource.getCriterias().toString().replace("{", "").replace("}", "");
                Window.open(GWT.getModuleBaseURL() + "ReportServlet?map=" + criterias + "&type=" + type
                        + "&clsUrl=" + Operator.class.getName(), "report", "sdfs");
            }
        });

分享到:
评论

相关推荐

    GWT入门 GWT中文教程

    首先,EXT-GWT2.0.1是EXT-GWT(GWT-Ext)的一个版本,它是基于GWT的组件库,提供了丰富的用户界面组件,如表格、树形视图、菜单等,使得开发者可以构建出具有桌面级用户体验的Web应用。EXT-GWT的API和DOC文档对于...

    gwt 练习 gwt学习

    在学习GWT的过程中,练习StockWatcher可以帮助你掌握GWT的核心组件和工作原理。逐步理解并实践这些知识点,你将能够创建更复杂、功能丰富的GWT应用程序。记得在实践中不断尝试、调试和优化,以加深对GWT的理解。

    GWT

    1. **Java编程**:GWT允许开发者使用Java语言进行前端开发,利用Java的强大特性和丰富的库,同时避免了JavaScript的语法差异和兼容性问题。 2. **自动编译**:GWT将Java代码编译为优化过的JavaScript,这使得应用...

    GWT快速开发(GWT) 是一个Java软件开发框架用于开发类似于Google Maps和Gmail的AJAX应用程序。GWT的设计参考Java AWT包设计,类命名规则、接口设计、事件监听等。你可以用Java编程语言开发你的界面,然后用GWT编译器将Java类转换成适合浏览器执行的...

    - GWT提供了一套丰富的UI组件库,如Button、TextBox、ListBox等,这些组件可以轻松地构建复杂的用户界面。 - 支持事件处理机制,如点击事件、键盘事件等。 4. **远程服务调用(RPC)**: - GWT支持通过远程过程调用...

    GWT安装和使用

    GWT 支持在 Java 虚拟机 (JVM) 上直接运行前端代码,这意味着开发者可以在开发阶段直接使用 Java 调试工具来进行调试。这种模式下,无需生成 HTML 和 JavaScript 文件,使得调试变得更加直观高效。此外,这种方式还...

    gwt-jar.rar

    GWT-JAR文件通常包含了GWT库的各种组件、API和其他必要的资源,使得开发者能够利用Java语言来编写前端Web应用。 在深入探讨GWT之前,我们需要了解Java语言和JavaScript之间的关系。GWT的核心理念是通过Java编译器将...

    smartgwt最新版本GWT的DEMO

    SmartGWT是基于Google Web Toolkit (GWT) 的一个开源框架,它为开发富互联网应用程序(RIA)提供了丰富的组件库和高级功能。SmartGWT的最新版本进一步提升了用户体验,简化了开发过程,提供了更多现代Web设计的需求...

    Gwt Designer 开发实例一

    在这个“Gwt Designer 开发实例一”中,我们将探讨如何利用GWT Designer来创建Composite组件,实现CSS支持以及国际化(Internationalization)功能。 1. **GWT Composite组件开发**: GWT中的Composite组件允许...

    GWT EXT 教程全集

    EXT-GWT则是基于GWT的组件库,提供了丰富的用户界面元素,让开发者能够构建出具有桌面应用般体验的Web应用。 在提供的资源中,我们首先看到的是"EXT-GWT2.0.1+API+DOC.chm",这是一个离线版的EXT-GWT API文档。这个...

    gwt揭秘源代码

    通过《GWT 揭秘》的源代码,读者可以学习到如何创建GWT项目,设置模块,使用GWT的UI组件,实现异步通信,以及优化和调试代码。此外,书中可能还涵盖了自定义Widget、国际化、CSS样式控制、单元测试等方面的内容。 ...

    基于Java的网页表格组件 GWT Advanced Table.zip

    【标题】"基于Java的网页表格组件 GWT Advanced Table.zip" 涉及的主要知识点是Google Web Toolkit (GWT)的高级表格应用开发。GWT是一个开源的Java框架,允许开发者使用Java语言来编写客户端的Web应用程序,然后自动...

    hibernate+gwt2.4

    这个项目可能是为了展示如何在GWT前端应用程序中有效地利用Hibernate来处理后端数据库操作。GWT是一种用于构建高性能、富客户端Web应用的开发工具,而Hibernate则是一个流行的Java对象关系映射(ORM)框架,它简化了...

    smartgwt+mybatis+spring的整合

    这样的整合模式能够充分利用各自框架的优势,SmartGwt提供高效的前端展示,Mybatis简化数据库操作,Spring则作为整体架构的胶水,使得整个系统的可维护性和扩展性得到提升。在实际项目中,开发者可以根据需求调整...

    smartGWT最新zip

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

    GWT开发环境JAVA

    GWT的主要目标是简化前端开发,提供一套强大的工具集,使开发者能够利用Java的强类型和丰富的生态系统来构建复杂的Web应用。 ### GWT的组成 1. **开发工具**:GWT提供了Eclipse插件,使得开发者可以在熟悉的IDE中...

    gwtext学习三部曲

    gwtext是Google Web Toolkit (GWT) 的一个扩展库,提供了丰富的用户界面组件和样式,使得在GWT平台上构建复杂的Web应用变得更加便捷。GWT Ext则是gwtext的核心部分,基于Ext JS库,为GWT提供了更多的UI组件和功能。 ...

    gwt colorpicker

    gwt 颜色选择器组件,功能强大得如ps一样

    SmartGwt学习文档

    GWT是一个开源工具,允许开发者使用Java语言编写前端代码,然后自动编译为高效的JavaScript。GWT提供了编译器、API和开发工具,使得开发者可以在Java环境中进行Web开发,而无需深入学习JavaScript。 SmartGwt在此...

Global site tag (gtag.js) - Google Analytics