Suggested case list:
Using timer to refresh a grid
383guest172.69.33.12125nk0uiMay 7, 2020 7:23:47 AMlinkuser model to move item to another listbox
120guest162.158.193.148d0n3krApr 2, 2020 5:28:28 AMlinkDisabled list item row passed to VM-1981
296fatih123160.83.36.13025nk0uiFeb 13, 2018 4:25:44 PMlinkDisabled list item row passed to VM-1981
295fatih123160.83.36.13025nk0uiFeb 13, 2018 4:25:16 PMlinkDisabled list item row passed to VM-1981
294fatih123160.83.36.13225nk0uiFeb 13, 2018 3:30:44 PMlinkgrid sample with ListModel/RowRenderer
816guest80.82.2.1312vah9ajFeb 21, 2017 11:42:21 AMlinkgrid sample with ListModel/RowRenderer
809guest175.98.113.1622vah9ajJan 26, 2017 9:19:33 AMlinkgrid sample with ListModel/RowRenderer
196guest79.185.142.402vah9ajApr 26, 2014 10:53:57 PMlinkgrid sample with ListModel/RowRenderer
195guest79.185.142.402vah9ajApr 26, 2014 10:53:54 PMlinkgrid sample with ListModel/RowRenderer
194guest79.185.142.402vah9ajApr 26, 2014 10:53:51 PMlinkgrid sample with ListModel/RowRenderer
193guest79.185.142.402vah9ajApr 26, 2014 10:53:48 PMlinkgrid sample with ListModel/RowRenderer
192guest79.185.142.402vah9ajApr 26, 2014 10:53:44 PMlinkgrid sample with ListModel/RowRenderer
191guest79.185.142.402vah9ajApr 26, 2014 10:53:40 PMlinkHierarchy table without using ZK PE/EE
1aaknai151.28.135.2131s871daJul 29, 2013 11:02:46 PMlinkgrid sample with ListModel/RowRenderer
128aaknai151.28.135.2132vah9ajJul 29, 2013 7:20:00 PMlinkuser model to move item to another listbox
1TonyQ114.25.109.94d0n3krApr 21, 2012 10:43:27 AMlinkUsing timer to refresh a grid
1TonyQ220.133.44.3725nk0uiFeb 17, 2012 3:17:34 AMlinkFire a event from child iframe
1TonyQ220.133.44.372eupjotFeb 3, 2012 5:04:52 AMlinkTextbox input restriction sample
1TonyQ72.21.245.2431b3nlr0Dec 20, 2011 10:09:10 AMlinkTest web core taglib in ZUL
1TonyQ198.203.175.175ofqkemDec 17, 2011 3:36:08 AMlinkLatest 10 Fiddles :
Textbox input restriction sample
1guest172.71.137.1339ahuuhJan 12, 2025 6:43:16 AMlinkZK MVVM Converter
21guest172.71.137.13816cf90oJan 12, 2025 6:35:27 AMlinkTemplate composition and include
35guest172.70.246.66vroi36Jan 10, 2025 3:44:06 PMlinkTemplate composition and include
34guest172.70.246.66vroi36Jan 10, 2025 3:43:42 PMlinkTemplate composition and include
33guest172.70.246.66vroi36Jan 10, 2025 3:42:59 PMlinkTemplate composition and include
32guest172.70.246.67vroi36Jan 10, 2025 3:41:58 PMlinkTemplate composition and include
31guest172.70.246.66vroi36Jan 10, 2025 3:41:25 PMlinkTemplate composition and include
30guest172.70.246.66vroi36Jan 10, 2025 3:39:35 PMlinkTemplate composition and include
29guest172.70.246.66vroi36Jan 10, 2025 3:39:09 PMlinkTemplate composition and include
28guest172.70.246.67vroi36Jan 10, 2025 3:37:54 PMlink2089
2guest220.133.44.1473ucoff8Jun 16, 2015 8:44:57 AMlinkresources
index.zulzul<zk>
<div>
<div>
1. Test each of the following component's selection that the
unselection will show after that component when you change
the selection. (ps. test shift click also)
</div>
</div>
<vlayout>
<zscript>
import org.zkoss.lang.Objects;
ListModelList model3 = new ListModelList();
model3.add("test1");
model3.add("test2");
model3.add("test3");
model3.setMultiple(true);
ListModelList model7 = new ListModelList();
model7.add("test1");
model7.add("test2");
model7.add("test3");
model7.add("test4");
model7.add("test5");
model7.add("test6");
model7.add("test7");
model7.setMultiple(true);
ListModelList getModel(ListModelList model) {
return (ListModelList) Objects.clone(model);
}
ListModelList node = new ListModelList();
node.add(new DefaultTreeNode("test2.1"));
DefaultTreeModel Tmodel = new DefaultTreeModel(new DefaultTreeNode("ROOT",
Arrays.asList(new DefaultTreeNode[] {
new DefaultTreeNode("test 1"),
new DefaultTreeNode("test 2", node) })));
ListModelList node1 = new ListModelList();
node1.add(new DefaultTreeNode("test2.1"));
DefaultTreeModel Tmodel1 = new DefaultTreeModel(new DefaultTreeNode("ROOT",
Arrays.asList(new DefaultTreeNode[] {
new DefaultTreeNode("test 1"),
new DefaultTreeNode("test 2", node1),
new DefaultTreeNode("test 3"),
new DefaultTreeNode("test 4"),
new DefaultTreeNode("test 5") })));
</zscript>
<hlayout>
<tabbox>
<tabs>
<tab label="Listbox with no rod"></tab>
<tab label="Listbox with rod"></tab>
<tab label="Tree"></tab>
<tab label="Selectable Component"></tab>
</tabs>
<tabpanels>
<tabpanel>
<hlayout>
<vlayout>
<vlayout width="500px">
<listbox
onCreate="self.model=getModel(model3)" width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<custom-attributes
org.zkoss.zul.listbox.rod="false" />
<listhead>
<listheader>
test with model
</listheader>
</listhead>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout width="500px">
<listbox width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<custom-attributes
org.zkoss.zul.listbox.rod="false" />
<listhead>
<listheader>
test with no model
</listheader>
</listhead>
<listitem>
<listcell>test1</listcell>
</listitem>
<listitem disabled="true">
<listcell>test2</listcell>
</listitem>
<listitem>
<listcell>test3</listcell>
</listitem>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout width="500px">
<listbox width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<custom-attributes
org.zkoss.zul.listbox.rod="false" />
<listhead>
<listheader>
test with unselectable
listgroup and no model
</listheader>
</listhead>
<listitem>
<listcell>test1</listcell>
</listitem>
<listitem disabled="true">
<listcell>test2</listcell>
</listitem>
<listitem>
<listcell>test3</listcell>
</listitem>
<listgroup>
<listcell>test4</listcell>
</listgroup>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
</vlayout>
<vlayout>
<vlayout width="500px">
<listbox width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<custom-attributes
org.zkoss.zul.listbox.rod="false"
org.zkoss.zul.listbox.groupSelect="true" />
<listhead>
<listheader>
test with selectable
listgroup and no model
</listheader>
</listhead>
<listitem>
<listcell>test1</listcell>
</listitem>
<listitem disabled="true">
<listcell>test2</listcell>
</listitem>
<listitem>
<listcell>test3</listcell>
</listitem>
<listgroup>
<listcell>test4</listcell>
</listgroup>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout width="500px">
<listbox
onCreate="self.model=getModel(model7)" width="500px"
mold="paging" pageSize="3" multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<custom-attributes
org.zkoss.zul.listbox.rod="false" />
<listhead>
<listheader>
test with model and
paging
</listheader>
</listhead>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout width="500px">
<listbox width="500px" mold="paging"
pageSize="3" multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<custom-attributes
org.zkoss.zul.listbox.rod="false" />
<listhead>
<listheader>
test with no model and
paging
</listheader>
</listhead>
<listitem>
<listcell>test1</listcell>
</listitem>
<listitem disabled="true">
<listcell>test2</listcell>
</listitem>
<listitem>
<listcell>test3</listcell>
</listitem>
<listitem>
<listcell>test4</listcell>
</listitem>
<listitem>
<listcell>test5</listcell>
</listitem>
<listitem>
<listcell>test6</listcell>
</listitem>
<listitem>
<listcell>test7</listcell>
</listitem>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
</vlayout>
</hlayout>
</tabpanel>
<tabpanel>
<hlayout>
<vlayout>
<vlayout width="500px">
<listbox id="box6"
onCreate="self.model=getModel(model3)" width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<listhead>
<listheader>
test with model
</listheader>
</listhead>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout width="500px">
<listbox id="box7" width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<listhead>
<listheader>
test with no model
</listheader>
</listhead>
<listitem>
<listcell>test1</listcell>
</listitem>
<listitem disabled="true">
<listcell>test2</listcell>
</listitem>
<listitem>
<listcell>test3</listcell>
</listitem>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout width="500px">
<listbox id="box8" width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<listhead>
<listheader>
test with unselectable
listgroup and no model
</listheader>
</listhead>
<listitem>
<listcell>test1</listcell>
</listitem>
<listitem disabled="true">
<listcell>test2</listcell>
</listitem>
<listitem>
<listcell>test3</listcell>
</listitem>
<listgroup>
<listcell>test4</listcell>
</listgroup>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
</vlayout>
<vlayout>
<vlayout width="500px">
<listbox id="box9" width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<custom-attributes
org.zkoss.zul.listbox.groupSelect="true" />
<listhead>
<listheader>
test with selectable
listgroup and no model
</listheader>
</listhead>
<listitem>
<listcell>test1</listcell>
</listitem>
<listitem disabled="true">
<listcell>test2</listcell>
</listitem>
<listitem>
<listcell>test3</listcell>
</listitem>
<listgroup>
<listcell>test4</listcell>
</listgroup>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout width="500px">
<listbox id="box10"
onCreate="self.model=getModel(model7)" width="500px"
mold="paging" pageSize="3" multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<listhead>
<listheader>
test with model and
paging
</listheader>
</listhead>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout width="500px">
<listbox id="box11" width="500px"
mold="paging" pageSize="3" multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<listhead>
<listheader>
test with no model and
paging
</listheader>
</listhead>
<listitem>
<listcell>test1</listcell>
</listitem>
<listitem disabled="true">
<listcell>test2</listcell>
</listitem>
<listitem>
<listcell>test3</listcell>
</listitem>
<listitem>
<listcell>test4</listcell>
</listitem>
<listitem>
<listcell>test5</listcell>
</listitem>
<listitem>
<listcell>test6</listcell>
</listitem>
<listitem>
<listcell>test7</listcell>
</listitem>
</listbox>
<label />
<label />
<label />
<label />
</vlayout>
</vlayout>
</hlayout>
</tabpanel>
<tabpanel>
<vlayout>
<tree model="${Tmodel}" width="500px"
multiple="true" checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<treecols sizable="true">
<treecol label="test with model" />
</treecols>
</tree>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout>
<tree width="500px" multiple="true"
checkmark="true">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<treecols sizable="true">
<treecol label="test with no model" />
</treecols>
<treechildren>
<treeitem>
<treerow>
<treecell label="test 1" />
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="test 2" />
</treerow>
<treechildren>
<treeitem>
<treerow>
<treecell
label="test 2.1" />
</treerow>
</treeitem>
</treechildren>
</treeitem>
</treechildren>
</tree>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout>
<tree model="${Tmodel1}" width="500px"
multiple="true" checkmark="true" mold="paging" pageSize="3">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<treecols sizable="true">
<treecol
label="test with model and paging" />
</treecols>
</tree>
<label />
<label />
<label />
<label />
</vlayout>
<vlayout>
<tree width="500px" multiple="true"
checkmark="true" mold="paging" pageSize="3">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
<treecols sizable="true">
<treecol
label="test with no model and paging" />
</treecols>
<treechildren>
<treeitem>
<treerow>
<treecell label="test 1" />
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="test 2" />
</treerow>
<treechildren>
<treeitem>
<treerow>
<treecell
label="test 2.1" />
</treerow>
</treeitem>
</treechildren>
</treeitem>
<treeitem>
<treerow>
<treecell label="test 3" />
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="test 4" />
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell label="test 5" />
</treerow>
</treeitem>
</treechildren>
</tree>
<label />
<label />
<label />
<label />
</vlayout>
</tabpanel>
<tabpanel>
<vlayout>
<hlayout>
Chosen Box:
<chosenbox width="150px"
onCreate="self.model=getModel(model3)">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
</chosenbox>
<label />
<label />
<label />
<label />
</hlayout>
<hlayout>
Select Box:
<selectbox
onCreate="self.model=getModel(model3)">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
</selectbox>
<label />
<label />
<label />
<label />
</hlayout>
<hlayout>
ComboBox:
<combobox
onCreate="self.model=getModel(model3)">
<attribute name="onSelect">
self.nextSibling.setValue("Unselection items: "
+ event.getUnselectedItems());
self.nextSibling.nextSibling.setValue("Previous items: "
+ event.getPreviousSelectedItems());
self.nextSibling.nextSibling.nextSibling.setValue("Unselection objects: "
+ event.getUnselectedObjects());
self.nextSibling.nextSibling.nextSibling.nextSibling
.setValue("Previous objects: " + event.getPreviousSelectedObjects());
</attribute>
</combobox>
<label />
<label />
<label />
<label />
</hlayout>
</vlayout>
</tabpanel>
</tabpanels>
</tabbox>
</hlayout>
</vlayout>
</zk>