smartGWT的Canvas提供了两个方法分别用来对传入的Object或者Canvas组件直接打印和显示打印预览。
表格必然有分页,打印的时候要打印所有的数据,因此必然需要使用相同的DataSource重新取一遍数据,而且这次要取所有数据;
含有所有数据的表格只用于打印,不用来显示(比如用户设定了每页显示10行数据,他不会希望点一下打印之后,表格显示了所有数据);
表格所在的页面可能有一些不需要打印的UI组件(通常只需要打印表格ListGrid)。
综合上述理由,有必要创建一个新的ListGrid,专门用于打印,打印之后即destroy()掉。
如果可以直接拷贝一份原来的ListGrid对象,然后对这份拷贝进行重新取数据等操作,就会十分完美,可惜Java对于对象的拷贝是相当麻烦的(对象要实现Cloneable接口等等)。
在下面的代码中,XXXGridView是需要被打印的UI组件,先创建一个它的实例,然后remove掉不需要被打印的member,加入两个button,分别为打印和取消。通过自定义的createDataSource()创建一个XXXGridDataSource的实例,把fetch到的data设到XXXGridView的ListGrid里面。然后调用printView.show()显示打印预览。
如果用户点打印,则调用Canvas.printComponents(new Object[]{printView}); 打印。
无论用户点击打印还是取消,都destroy掉这个XXXGridView的实例。
分享到:
相关推荐
1. **SmartGWT组件**:SmartGWT提供了众多可定制的UI组件,如按钮、表格、表单、图表等。实例中,你可以看到如何创建和配置这些组件,以及它们在实际应用中的表现。 2. **数据绑定**:SmartGWT支持自动的数据绑定,...
SmartGWT 2.0 API 是一款基于Google Web Toolkit (GWT) 2.0的高级组件库,它为开发者提供了丰富的用户界面组件和强大的功能,以构建高性能、交互式的Web应用程序。SmartGWT 2.0 在其前身的基础上进行了多方面的改进...
SmartGwt是一款强大的Java库,专门用于构建富互联网应用程序(RIA,Rich Internet Applications)。它基于Google的GWT(Google Web Toolkit)框架,并扩展了其功能,提供了丰富的UI组件和更高级的客户端性能优化。...
- 表格控件(ListGrid):支持排序、分页、过滤,甚至嵌套数据展示。 - 树形组件(TreeGrid):提供层次结构的数据展示,并可展开/折叠节点。 - 图形组件(Chart):支持各种图表类型,如柱状图、饼图、线图等,...
- **组件丰富**:SmartGWT包含各种各样的UI组件,如表格、树形视图、图表、表单元素等,这些组件都经过精心设计,可以快速构建复杂的用户界面。 - **数据绑定**:SmartGWT支持数据驱动的开发,允许开发者轻松地将...
在SmartGWT开发中,你会用到其提供的丰富UI组件,如表格、按钮、面板等。SmartGWT的组件使用XML布局定义,配合Java后台逻辑,可以实现复杂的交互和数据展示。例如,你可以创建一个`ListGrid`组件来显示数据,使用`...
在本项目中,SmartGWT将用于创建用户界面,包括各种交互式组件,如表格、按钮、对话框等。 结合Maven和SmartGWT,开发者可以创建一个高效的开发流程:在pom.xml文件中声明SmartGWT和其他依赖,Maven会自动下载并...
smartgwt.jar 文件包含了SmartGWT的全部组件库,包括表格、树形视图、图表、表单元素等,这些组件都经过精心设计和优化,支持自定义样式和行为,以满足不同项目需求。例如,TreeGrid组件允许用户在表格和树结构之间...
开发者可以通过这些示例学习如何使用SmartGWT的各种组件,如表格、树形视图、图表、表单等,以及如何进行数据绑定和事件处理。通过这些实例,可以快速掌握SmartGWT的基本使用方法和设计模式。 此外,SmartGWT支持...
SmartGwt是一个强大的Java库,用于构建基于Web的用户界面,它提供了丰富的组件,包括ListGrid,一个功能强大的表格控件。在这个问题中,开发者遇到了在设置ListGrid为简单选择模式(SelectionStyle.SIMPLE)并使用复...
SmartGWT 2.4 是一个强大的开源框架,主要用于构建企业级的富互联网应用程序(Rich Internet Applications,简称RIA)。这个框架基于Google Web Toolkit (GWT) 并且扩展了其功能,提供了丰富的组件库和高级特性,...
SmartGWT 是封装了 SmartClient 的 GWT API。SmartGWT 有如下特色: 丰富的控件。很多较为复杂的常用界面都被包装成简单易用的控件。比如可 编辑的树形表格、查询常用的过滤器创建器和类似 Google Calendar 的日历...
SmartGWT提供了大量的预定义组件,如表格、表单、图表等,这些组件可以直接在浏览器上运行,无需编写大量JavaScript代码。SmartGWT支持拖放式开发,使得UI设计变得简单直观。同时,它还支持响应式设计,确保在不同...
PagingListGrid是SmartGWT中的一个核心组件,它实现了分页表格的功能。这个类通常用于展示大量数据,并且允许用户在多页之间进行导航,以提高网页性能和用户体验。PagingListGrid结合了列表视图和分页控制,允许用户...
### SmartGWT 入门详解 #### 一、SmartGWT 概述 **SmartGWT** 是一款基于 **Google Web Toolkit (GWT)** 的高级Web应用开发框架,旨在简化企业级Web 2.0应用的开发过程。自从 **GWT** 发布以来,它吸引了大量的...
SmartGWT 是封装了 SmartClient 的 GWT API。而 SmartClient 是一个开源的企业级 Ajax 开发框架。 Google Web Toolkit 的发布,大大降低了 Java 开发人员进行 Web 开发的门槛。然而 GWT 本身提供的控件及功能相对...
- **丰富的控件库**:SmartGWT 提供了一套完整且丰富的控件库,覆盖了从基本的文本输入到复杂的表格和图表等多种类型。 - **高性能**:SmartGWT 采用了多种技术手段来确保应用的高性能表现,包括数据分页、异步加载...
通过结合 SmartGwt 的其他组件,如表格、图表等,可以构建出功能强大的 Web 应用。 总之,SmartGwt 的原生 Desktop 功能为开发者提供了构建桌面级 Web 应用的强大工具。理解并掌握这一特性,不仅能够提升应用的用户...
SmartGWT则是在GWT的基础上,增加了大量预先封装好的UI组件和实用工具类,包括表格、图表、日历、对话框等,大大减轻了开发者的工作负担。在"Showcase"这个DEMO中,开发者可以找到各种SmartGWT组件的实际示例,了解...
SmartGWT的`ListGrid`支持虚拟化,通过设置`isScrolling`属性为`true`和`useVirtualScrolling`为`true`来启用。 6. **响应式设计**:为了适应不同设备和屏幕尺寸,我们可以利用SmartGWT的响应式布局(Responsive ...