Filter Data in a Range"
From Documentation
Line 37: | Line 37: | ||
</source> | </source> | ||
===Composer=== | ===Composer=== | ||
− | ==== | + | ====Toggle AutoFilter==== |
− | <source lang="java" high=" | + | <source lang="java" high="5"> |
+ | Spreadsheet spreadsheet; | ||
int rowIndex; | int rowIndex; | ||
int columnIndex; | int columnIndex; | ||
− | + | public void onClick$autoFilter() { | |
− | + | AutoFilter autoFilter = Ranges.range(spreadsheet.getSelectedSheet(), rowIndex, columnIndex).autoFilter(); | |
+ | alert(autoFilter == null ? "Clear AutoFilter" : "Applied AutoFilter"); | ||
+ | } | ||
+ | </source> | ||
+ | ====Reapply AutoFilter==== | ||
+ | <source lang="java" high="2"> | ||
public void onClick$reapplyAutoFilter() { | public void onClick$reapplyAutoFilter() { | ||
− | Ranges.range(spreadsheet.getSelectedSheet() | + | Ranges.range(spreadsheet.getSelectedSheet()).applyFilter(); |
} | } | ||
</source> | </source> | ||
− | |||
− | |||
− | |||
− | |||
====Clear AutoFilter==== | ====Clear AutoFilter==== | ||
Line 58: | Line 60: | ||
} | } | ||
</source> | </source> | ||
− | |||
=Version History= | =Version History= |
Revision as of 11:11, 20 May 2011
Available in ZK Spreadsheet EE only
ZK Spreadsheet can filter data to find a subset of data in a range.
Purpose
Filtered data display rows that meet criteria, and hide trivial data.
AutoFilter
Use Range.autoFilter() can toggle AutoFilter for sheet in a range. After applied AutoFilter, user can specify criteria use Range.autoFilter(integer, object, integer, object, boolean) to filter data in a range.
Reapply filter
If data within AutoFilter range has been added, modified or deleted. Reapply a filter can display different results using same criteria. Use Range.applyFilter() to reapply current filter.
Clear filter
Use Range.showAllData() to clear current filter.
ZUML
<zk>
<div height="100%" width="100%" apply="org.zkoss.zssessentials.config.AutoFilterComposer">
Criteria: hide "222"
<div>
<button id="autoFilter" label="Toggle AutoFilter" mold="trendy"></button>
<button id="reapplyAutoFilter" label="Reapply AutoFilter" mold="trendy"></button>
<button id="clearAutoFilter" label="Clear AutoFilter" mold="trendy"></button>
</div>
<spreadsheet id="spreadsheet" src="/WEB-INF/excel/config/autoFilter.xlsx"
maxrows="200"
maxcolumns="40"
width="100%"
height="450px"></spreadsheet>
</div>
</zk>
Composer
Toggle AutoFilter
Spreadsheet spreadsheet;
int rowIndex;
int columnIndex;
public void onClick$autoFilter() {
AutoFilter autoFilter = Ranges.range(spreadsheet.getSelectedSheet(), rowIndex, columnIndex).autoFilter();
alert(autoFilter == null ? "Clear AutoFilter" : "Applied AutoFilter");
}
Reapply AutoFilter
public void onClick$reapplyAutoFilter() {
Ranges.range(spreadsheet.getSelectedSheet()).applyFilter();
}
Clear AutoFilter
public void onClick$clearAutoFilter() {
Ranges.range(spreadsheet.getSelectedSheet()).showAllData();
}
Version History
Version | Date | Content |
---|---|---|
2.1.0 | May, 2011 | AutoFilter |
All source code listed in this book is at Github.