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 :
constraint binding textbox
3guest172.68.151.16220peldaDec 5, 2025 5:08:19 PMlinkAnother new ZK fiddle
2guest172.68.151.16320peldaDec 5, 2025 5:07:51 PMlinkAnother new ZK fiddle
1guest172.68.151.16220peldaDec 5, 2025 5:07:32 PMlinkAnother new ZK fiddle
1peggypeng172.71.154.99364f4neDec 5, 2025 9:24:31 AMlinktooltip example
2guest104.22.23.13rc1ntoDec 4, 2025 2:23:45 PMlinkAnother new ZK fiddle
1guest172.69.134.2277t7602Dec 4, 2025 1:40:46 PMlinkAnother new ZK fiddle
1peggypeng104.22.17.1802df6e3oDec 4, 2025 8:41:29 AMlinkonClose
1peggypeng172.68.87.248j8kd8aDec 3, 2025 4:10:26 AMlinkAnother new ZK fiddle
1peggypeng172.69.134.2271rm7f4eNov 26, 2025 3:31:24 AMlinkZK-5912-Suggestion
2rebeccalai104.22.20.1442qrmiiuNov 26, 2025 2:07:15 AMlinklittle ifttt styles
1guest66.102.6.244mfialjSep 25, 2015 5:29:16 AMlinkresources
index.zulzul<zk xmlns:w="client">
<script>
function show(thingid) {
var zkwidget = zk.Widget.$('$'+ thingid); //zk
zkwidget.setVisible(true);
}
function hide(thingid) {
var zkwidget = zk.Widget.$('$'+ thingid); //zk
zkwidget.setVisible(false);
}
</script>
<style>
.z-tab-accordion .z-tab-accordion-header, .z-tab-accordion .z-tab-accordion-tl,
.z-tab-accordion .z-tab-accordion-tr, .z-tab-accordion .z-tab-accordion-hl,
.z-tab-accordion .z-tab-accordion-hr, .z-tab-accordion .z-tab-accordion-hm,
.z-tab-accordion .z-tab-accordion-text, .z-tab-accordion .z-tab-accordion-close {
background:none;
color:#7A8C96;
font-family: ;
font-size:1.2em;
text-shadow:0px 1px 1px #A8B8C2;
padding:5px;
}
.z-tabpanels .z-tabpanel, .z-tabpanels .z-tabpanel-cnt {
background-image:none;
}
.addChannel.z-button .z-button-tl, .addChannel.z-button .z-button-tr,
.addChannel.z-button .z-button-bl, .addChannel.z-button .z-button-br,
.addChannel.z-button .z-button-tm, .addChannel.z-button .z-button-bm,
.addChannel.z-button .z-button-cl, .addChannel.z-button .z-button-cr {
background-image:none;
}
.addChannel.z-button .z-button-cm {
font-size:1em;
color:#fff;
text-shadow:1px 1px #BF3030;
padding:4px 6px;
border-radius:6px;
background:#FF7373;
box-shadow:0 0 1px 1px #BF3030, 0 0 0 2px #FF7373;
}
.next.z-button .z-button-tl, .next.z-button .z-button-tr,
.next.z-button .z-button-bl, .next.z-button .z-button-br,
.next.z-button .z-button-tm, .next.z-button .z-button-bm,
.next.z-button .z-button-cl, .next.z-button .z-button-cr {
background-image:none;
}
.next.z-button .z-button-cm {
background-image:none;
padding:13px;
padding-right:600px;
border:none;
font-size:1.5em;
color:#cfc19a;
text-shadow:-1px 1px 1px #e7dec6, -1px -.5px 2px #877032;
}
.next:hover.z-button .z-button-cm {
background-image:none;
background-color:#f4f4f4;
padding:13px;
padding-right:600px;
outline:1px solid #bbb;
font-size:1.5em;
color:#877032;
text-shadow:-1px 1px 1px #e7dec6, -1px -.5px 2px #877032;
}
.orderableButton.z-button .z-button-tl, .orderableButton.z-button .z-button-tr,
.orderableButton.z-button .z-button-bl, .orderableButton.z-button .z-button-br,
.orderableButton.z-button .z-button-tm, .orderableButton.z-button .z-button-bm,
.orderableButton.z-button .z-button-cl, .orderableButton.z-button .z-button-cr {
background-image:none;
}
.orderableButton.z-button .z-button-cm {
background-image:none;
padding:13px;
border:none;
font-size:1.5em;
color:#6e8490;
}
.save.z-button .z-button-tl, .save.z-button .z-button-tr,
.save.z-button .z-button-bl, .save.z-button .z-button-br,
.save.z-button .z-button-tm, .save.z-button .z-button-bm,
.save.z-button .z-button-cl, .save.z-button .z-button-cr {
background-image:none;
}
.save.z-button .z-button-cm {
font-size:1.5em;
width:100%;
height:40px;
color:#888;
text-shadow:1px 1px #eee;
border-radius:5px;
border:1px solid #ddd;
background: rgb(226,226,226); /* Old browsers */
background: -moz-linear-gradient(top, rgba(226,226,226,1) 0%, rgba(219,219,219,1) 50%, rgba(209,209,209,1) 51%, rgba(245,245,245,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(226,226,226,1)), color-stop(50%,rgba(219,219,219,1)), color-stop(51%,rgba(209,209,209,1)), color-stop(100%,rgba(245,245,245,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(245,245,245,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(245,245,245,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(245,245,245,1) 100%); /* IE10+ */
background: linear-gradient(to bottom, rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(245,245,245,1) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e2e2e2', endColorstr='#f5f5f5',GradientType=0 ); /* IE6-9 */
}
.saveActive.z-button .z-button-cm {
font-size:1.5em;
width:100%;
height:40px;
color:#555;
text-shadow:1px 1px #fff;
border-radius:5px;
border:1px solid #ddd;
background: rgb(226,226,226); /* Old browsers */
background: -moz-linear-gradient(top, rgba(226,226,226,1) 0%, rgba(219,219,219,1) 50%, rgba(209,209,209,1) 51%, rgba(245,245,245,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(226,226,226,1)), color-stop(50%,rgba(219,219,219,1)), color-stop(51%,rgba(209,209,209,1)), color-stop(100%,rgba(245,245,245,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(245,245,245,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(245,245,245,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(245,245,245,1) 100%); /* IE10+ */
background: linear-gradient(to bottom, rgba(226,226,226,1) 0%,rgba(219,219,219,1) 50%,rgba(209,209,209,1) 51%,rgba(245,245,245,1) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e2e2e2', endColorstr='#f5f5f5',GradientType=0 ); /* IE6-9 */
}
.cancel.z-button .z-button-tl, .cancel.z-button .z-button-tr,
.cancel.z-button .z-button-bl, .cancel.z-button .z-button-br,
.cancel.z-button .z-button-tm, .cancel.z-button .z-button-bm,
.cancel.z-button .z-button-cl, .cancel.z-button .z-button-cr {
background-image:none;
}
.cancel.z-button .z-button-cm {
font-size:1.5em;
width:100%;
height:40px;
color:#eee;
text-shadow:1px 1px #BF3030;
border-radius:5px;
background: -webkit-gradient(linear, 0% 0%, 0% 84%, from(#FF7373), to(#BF3030));
box-shadow:0 -16px 2px #BF3030 inset;
}
.channelLink {
font-size:1em;
text-decoration:none;
color:#7a8c96;
padding-right:10px;
padding-left:8px;
font-family:‘Lucida Console’, Monaco, monospace;
}
.channelLink:hover {
font-size:1em;
text-decoration:underline;
color:#7a8c96;
padding-right:10px;
padding-left:8px;
}
.channelLinkSelected {
font-size:1em;
text-decoration:underline;
color:#bbb;
padding-right:10px;
padding-left:8px;
}
.channelTab {
border-bottom:1px solid #bbb;
background-color:transparent;
height:24px;
width:145px;
margin-left:4px;
padding-top:4px;
}
.channelTab:hover {
border-bottom:1px solid #bbb;
background-color:#eee;
height:24px;
width:145px;
margin-left:4px;
padding-top:4px;
}
.channelTabSelected {
border-bottom:1px solid #bbb;
background-color:#eee;
height:24px;
width:145px;
margin-left:4px;
padding-top:4px;
position:relative;
z-index:100;
}
.options {
background-color:#fff;
padding:10px;
width:600px;
height:200px;
}
.numberBackground {
background:#F2FFAD;
border-radius:50%;
text-align:center;
}
.number {
font-size:1em;
color:#72aa00;
text-shadow:0px 0px 4px #fff;
padding:1px;
font-weight:bold;
}
.optionTitle {
font-size:.9em;
}
</style>
<vlayout id="patientOptions" visible="true" style="margin-left:5px; padding-top:2px; padding-left:5px;">
<hlayout id="patientWonderbar" style="border-bottom:1px solid #bbb; padding-bottom:6px;">
<label value="Other choices" style="font-size:1em; color:#999"/>
<combobox value="Pick from the list or keep typing..." width="270px" mold="rounded"
w:onChange="show('creatinineLevel')" onSelect="creatinineCheck.checked=true">
<comboitem label="Creatinine level"/>
<comboitem label="Weight"/>
</combobox>
</hlayout>
<!--Other options selected//-->
<hlayout id="creatinineLevel" style="padding-left:10px; padding-top:6px;" visible="false">
<div visible="true">
<label value="11" sclass="number"/>
</div>
<div>
<label value="Creatinine level" sclass="optionTitle" id="creatinineCheck"/>
<listbox mold="select">
<listitem label=">" selected="true"/>
<listitem label="<"/>
<listitem label=">="/>
<listitem label="<="/>
<listitem label="="/>
</listbox>
<textbox width="50px" onClick="tab2.disabled=false; next1.disabled=false"/>
</div>
</hlayout>
<!--Default options-->
<hlayout style="padding-left:10px; padding-top:6px;">
<div visible="true" width="20px" height="20px" sclass="numberBackground">
<label value="1" sclass="number"/>
</div>
<div>
<label value="Age" sclass="optionTitle" id="ageCheck"/>
<listbox mold="select">
<listitem label=">" selected="true"/>
<listitem label="<"/>
<listitem label=">="/>
<listitem label="<="/>
<listitem label="="/>
</listbox>
<textbox value="60" width="50px" onClick="tab2.disabled=false; next1.disabled=false"/>
</div>
</hlayout>
<hlayout style="padding-left:10px; padding-top:6px;">
<div visible="true" width="20px" height="20px" sclass="numberBackground">
<label value="2" sclass="number"/>
</div>
<div>
<label value="Problem" sclass="optionTitle" id="problemCheck"/>
<combobox mold="rounded" onSelect="problemCheck.checked=true;">
<comboitem label="Depression"/>
<comboitem label="Diabetes mellitus"/>
<comboitem label="Gout"/>
</combobox>
</div>
</hlayout>
<button label="Add another channel" sclass="addChannel"
onClick='tab1.label="For patients with age > 60 and problem Diabetes Mellitus,"'
w:onClick="show('patientEditLink'), hide('patientOptions')"/>
</vlayout>
<hlayout style="padding:10px; font-family: Copperplate Gothic Light, sans-serif;" id="ruleName">
<label value="Name your rule" style="font-size:1em;"/>
<textbox width="250px;" w:onClick="this.$f('saveButton').setSclass('saveActive')"/>
</hlayout>
<button label="Save" id="saveButton" sclass="save" w:onClick="show('rosAlert'), show('doneMessage'), hide('tb'), hide('cancelButton'), hide('saveButton'), hide('ruleName'), hide('rightPanel')"/>
<button label="Cancel" id="cancelButton" sclass="cancel"/>
<label value="Your rule has been saved." id="doneMessage" style="font-size:1.6em; font-family:trebuchet MS;" visible="false"/>
</zk>
TestComposer.javajavaimport org.zkoss.zk.ui.*;
import org.zkoss.zk.ui.event.*;
import org.zkoss.zk.ui.util.*;
import org.zkoss.zk.ui.ext.*;
import org.zkoss.zk.au.*;
import org.zkoss.zk.au.out.*;
import org.zkoss.zul.*;
public class TestComposer extends GenericForwardComposer{
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
}
public void onClick$btn(Event e) throws InterruptedException{
Messagebox.show("Hi btn");
}
}