Paging"

From Documentation
Line 12: Line 12:
 
A <tt>paging</tt> component is used to separate long content into multiple pages. For example, assume that you have 100 items and prefer to show 20 items at a time, then you can use the paging components as follows.
 
A <tt>paging</tt> component is used to separate long content into multiple pages. For example, assume that you have 100 items and prefer to show 20 items at a time, then you can use the paging components as follows.
  
The <tt>listbox </tt>and <tt>grid </tt>component support the paging intrinsically, so you don't need to specify a paging component explicitly as above, unless you want to have different visual layout or to control multiple listbox and grid with one paging component.
+
The [[ZK Component Reference/Data/Listbox|listbox]], [[ZK Component Reference/Data/Grid|grid]] and [[ZK Component Reference/Data/Tree|tree]] components support the paging intrinsically, so you don't need to specify a paging component explicitly as above, unless you want to have different visual layout or to control multiple listbox and grid with one paging component.
  
 
= Example =
 
= Example =

Revision as of 03:22, 21 December 2010

Paging

Employment/Purpose

A paging component is used to separate long content into multiple pages. For example, assume that you have 100 items and prefer to show 20 items at a time, then you can use the paging components as follows.

The listbox, grid and tree components support the paging intrinsically, so you don't need to specify a paging component explicitly as above, unless you want to have different visual layout or to control multiple listbox and grid with one paging component.

Example

Paging mold default.png

 <vbox>
     <paging totalSize="100" pageSize="20"/>
 </vbox>

When a user clicks on the hyperlinks, the onPaging event is sent with an instance of org.zkoss.zul.event.PagingEvent to the paging component. To decide which portion of your 100 items are visible, you shall add a listener to the paging component.

<zk>
	<paging id="paging" />
	
	<zscript>
	List result = new SearchEngine().find("ZK");
	//assume SearchEngine.find() will return a list of items.
	
	paging.setTotalSize(result.size());
	paging.addEventListener("onPaging", new org.zkoss.zk.ui.event.EventListener() {
		public void onEvent(Event event) {
			int pgno = event.getPaginal().getActivePage();
			int ofs = pgno * event.getPaginal().getPageSize();
			
			
			new Viewer().redraw(result, ofs, ofs + event.getPaginal().
				getPageSize() - 1);
			//assume redraw(List result, int b, int e) will display
			//from the b-th item to the e-th item
			}
		}
	);
	</zscript>
</zk>

Supported Events

Name
Event Type
onPaging
Event: PagingEvent

Notifies one of the pages of a multi-page component is selected by the user.

Supported Molds

Available molds of a component are defined in lang.xml embedded in zul.jar.

Name
Snapshot
default
Paging mold default.png
os
Paging mold os.png

Supported Children

*NONE

Use Cases

Version Description Example Location
3.6 Smalltalk: Paging Sorting with a filter object Paging Sorting with a filter object
3.6 Live Data http://docs.zkoss.org/wiki/Live_Data,_Paging,_setModel_and_Implement_your_own_renderer

Version History

Last Update : 2010/12/21


Version Date Content
     



Last Update : 2010/12/21

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.