Processing...

Suggested case list:

Using timer to refresh a grid

383guest172.69.33.12125nk0uiMay 7, 2020 7:23:47 AMlink

user model to move item to another listbox

120guest162.158.193.148d0n3krApr 2, 2020 5:28:28 AMlink

Disabled list item row passed to VM-1981

296fatih123160.83.36.13025nk0uiFeb 13, 2018 4:25:44 PMlink

Disabled list item row passed to VM-1981

295fatih123160.83.36.13025nk0uiFeb 13, 2018 4:25:16 PMlink

Disabled list item row passed to VM-1981

294fatih123160.83.36.13225nk0uiFeb 13, 2018 3:30:44 PMlink

grid sample with ListModel/RowRenderer

816guest80.82.2.1312vah9ajFeb 21, 2017 11:42:21 AMlink

grid sample with ListModel/RowRenderer

809guest175.98.113.1622vah9ajJan 26, 2017 9:19:33 AMlink

grid sample with ListModel/RowRenderer

196guest79.185.142.402vah9ajApr 26, 2014 10:53:57 PMlink

grid sample with ListModel/RowRenderer

195guest79.185.142.402vah9ajApr 26, 2014 10:53:54 PMlink

grid sample with ListModel/RowRenderer

194guest79.185.142.402vah9ajApr 26, 2014 10:53:51 PMlink

grid sample with ListModel/RowRenderer

193guest79.185.142.402vah9ajApr 26, 2014 10:53:48 PMlink

grid sample with ListModel/RowRenderer

192guest79.185.142.402vah9ajApr 26, 2014 10:53:44 PMlink

grid sample with ListModel/RowRenderer

191guest79.185.142.402vah9ajApr 26, 2014 10:53:40 PMlink

Hierarchy table without using ZK PE/EE

1aaknai151.28.135.2131s871daJul 29, 2013 11:02:46 PMlink

grid sample with ListModel/RowRenderer

128aaknai151.28.135.2132vah9ajJul 29, 2013 7:20:00 PMlink

user model to move item to another listbox

1TonyQ114.25.109.94d0n3krApr 21, 2012 10:43:27 AMlink

Using timer to refresh a grid

1TonyQ220.133.44.3725nk0uiFeb 17, 2012 3:17:34 AMlink

Fire a event from child iframe

1TonyQ220.133.44.372eupjotFeb 3, 2012 5:04:52 AMlink

Textbox input restriction sample

1TonyQ72.21.245.2431b3nlr0Dec 20, 2011 10:09:10 AMlink

Test web core taglib in ZUL

1TonyQ198.203.175.175ofqkemDec 17, 2011 3:36:08 AMlink

Latest 10 Fiddles :

constraint binding textbox

3guest172.68.151.16220peldaDec 5, 2025 5:08:19 PMlink

Another new ZK fiddle

2guest172.68.151.16320peldaDec 5, 2025 5:07:51 PMlink

Another new ZK fiddle

1guest172.68.151.16220peldaDec 5, 2025 5:07:32 PMlink

Another new ZK fiddle

1peggypeng172.71.154.99364f4neDec 5, 2025 9:24:31 AMlink

tooltip example

2guest104.22.23.13rc1ntoDec 4, 2025 2:23:45 PMlink

Another new ZK fiddle

1guest172.69.134.2277t7602Dec 4, 2025 1:40:46 PMlink

Another new ZK fiddle

1peggypeng104.22.17.1802df6e3oDec 4, 2025 8:41:29 AMlink

onClose

1peggypeng172.68.87.248j8kd8aDec 3, 2025 4:10:26 AMlink

Another new ZK fiddle

1peggypeng172.69.134.2271rm7f4eNov 26, 2025 3:31:24 AMlink

ZK-5912-Suggestion

2rebeccalai104.22.20.1442qrmiiuNov 26, 2025 2:07:15 AMlink

preemptive alerts

1221okspry134.68.31.2272q0rn3uNov 14, 2012 3:19:02 PMlink

resources

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); } function addCBC(thingid) { var withDiffWidget = zk.Widget.$('$withDiff'); var noDiffWidget = zk.Widget.$('$noDiff'); var popupCBCWidget = zk.Widget.$('$popupCBC'); var addCBCWidget = zk.Widget.$('addCBC'); var inCartCBCLabelWidget = zk.Widget.$('inCartCBCLabel'); var zkwidget = zk.Widget.$('$'+ thingid); //zk if (withDiffWidget.isChecked() || noDiffWidget.isChecked()) { show('inCartCBCLabel'); show('cartCBC'); hide('addCBC'); }else{ popupCBCWidget.open(addCBCWidget, null, "at_pointer"); } } </script> <style> .top.z-button .z-button-tl, .top.z-button .z-button-tr, .top.z-button .z-button-bl, .top.z-button .z-button-br, .top.z-button .z-button-tm, .top.z-button .z-button-bm, .top.z-button .z-button-cl, .top.z-button .z-button-cr { background-image:none; } .top-selected.z-button .z-button-tl, .top-selected.z-button .z-button-tr, .top-selected.z-button .z-button-bl, .top-selected.z-button .z-button-br, .top-selected.z-button .z-button-tm, .top-selected.z-button .z-button-bm, .top-selected.z-button .z-button-cl, .top-selected.z-button .z-button-cr { background-image:none; } .top-unfulfilled.z-button .z-button-tl, .top-unfulfilled.z-button .z-button-tr, .top-unfulfilled.z-button .z-button-bl, .top-unfulfilled.z-button .z-button-br, .top-unfulfilled.z-button .z-button-tm, .top-unfulfilled.z-button .z-button-bm, .top-unfulfilled.z-button .z-button-cl, .top-unfulfilled.z-button .z-button-cr { background-image:none; } .top-disabled.z-button .z-button-tl, .top-disabled.z-button .z-button-tr, .top-disabled.z-button .z-button-bl, .top-disabled.z-button .z-button-br, .top-disabled.z-button .z-button-tm, .top-disabled.z-button .z-button-bm, .top-disabled.z-button .z-button-cl, .top-disabled.z-button .z-button-cr { background-image:none; } .top-selected.z-button .z-button-cm { background-image:none; background: transparent; box-shadow:0px 0px 0px 1px #7A8C96 inset, 0px 15px 10px 2px #576873 inset, 0px -2px 8px 1px #576873 inset; border:1px solid #44555F; border-radius:8px; color:#a5a5a5; text-shadow:1px -1px #44555F; font-weight:bold; font-family:helvetica; padding-left:9px; padding-right:9px; padding-top:5px; padding-bottom:5px; } .top.z-button .z-button-cm { background-image:none; background: transparent; box-shadow:0px 0px 0px 1px #7A8C96 inset; border:1px solid #44555F; border-radius:8px; color:#fff; text-shadow:-1px 1px #44555F; font-weight:bold; font-family:helvetica; padding-left:9px; padding-right:9px; padding-top:5px; padding-bottom:5px; } .top-unfulfilled.z-button .z-button-cm { background-image:none; background: transparent; box-shadow:0px 0px 0px 1px #7A8C96 inset, 0px 0px 6px 1px #baccd5; border:1px solid #44555F; border-radius:8px; color:#fff; text-shadow:-1px 1px #44555F; font-weight:bold; font-family:helvetica; padding-left:9px; padding-right:9px; padding-top:5px; padding-bottom:5px; } .top-disabled.z-button .z-button-cm { background-image:none; background: transparent; box-shadow:0px 0px 0px 1px #7A8C96 inset, 0 -100px 0 #647884 inset; border:1px solid #44555F; border-radius:8px; color:#c7c7c7; text-shadow:1px 1px 0 #44555F, 0px -1px 0 #44555F; font-weight:bold; font-family:helvetica; padding-left:9px; padding-right:9px; padding-top:5px; padding-bottom:5px; } .selected.z-button .z-button-tl, .selected.z-button .z-button-tr, .selected.z-button .z-button-bl, .selected.z-button .z-button-br, .selected.z-button .z-button-tm, .selected.z-button .z-button-bm, .selected.z-button .z-button-cl, .selected.z-button .z-button-cr { background-image:none; } .selected.z-button .z-button-cm { background-image:none; background: transparent; box-shadow:0px 0px 0px 1px #7A8C96 inset, 0px 16px 7px 3px #576873 inset; border:1px solid #44555F; border-radius:8px; color:#c7c7c7; text-shadow:1px -1px #44555F; font-weight:bold; font-family:helvetica; padding-left:9px; padding-right:9px; padding-top:5px; padding-bottom:5px; } .bigDiv { overflow-y:auto; overflow-x:hidden; padding:5px; } .module { padding:5px; overflow-x:hidden; overflow-y:hidden; width:235px; border:1px solid #bbb; border-radius:5px; } .mainHeader { float:left; padding-bottom:6px; } .arrow-container { width:80px; float:right; right:.4em; } .previous { float:left; color:black; } .next { float:right; color:black; } .alert { margin-top:6px; } .alert-container { float:left; width:90%; } .alert-title { font-size:.8em; font-weight:bold; } .alert-title2 { font-size:.8em; font-weight:bold; margin-top:14px; } .alert-warning { font-size:.8em; color:red; font-family:courier; } .alert-details { font-size:.8em; font-family:trebuchet; display:none; } .alert-detailsDisplayed { font-size:.8em; font-family:trebuchet; display:inline; } .pulldown { width:235px; padding:7px; text-align:center; position:relative; margin-top:-3px; margin-left:-6px; background-color:#fff; box-shadow: 0 1px 0px #ddd, 0 -1px 0px #ddd; } .pulldown:hover { width:235px; padding:7px; text-align:center; position:relative; margin-top:-3px; margin-left:-6px; background-color:#fff; box-shadow: 0 2px 3px #bbb, 0 -1px 0px #bbb; } .pulldownSelected { width:235px; padding:7px; text-align:center; position:relative; margin-top:-3px; margin-left:-6px; background-color:#d6d6d6; box-shadow: 0 2px 6px #bbb inset, 0 -2px 0 #eaeaea inset; } a { color:#777; text-decoration:none; } a:hover { color:#777; text-decoration:underline; } </style> <columnlayout> <columnchildren width="74%" height="100%" style="margin-right:5px;"> <panel> <panelchildren> <div style="height:60px; box-shadow:0px -26px 0px 0px #647884 inset; background: -webkit-gradient(linear, 0% 0%, 0% 84%, from(#7A8C96), to(#647884)); "> <button label="Diagnoses" sclass="top-unfulfilled" id="problems" style="margin-left:1%; font-size:1em;"/> <button label="Note" sclass="top" id="note" style="margin-left:1%; font-size:1em;"/> <button label="Orders" sclass="top-selected" id="orders" style="margin-left:1%; font-size:1em;"/> <button label="Allergies" sclass="top" id="allergies" style="margin-left:1%; font-size:1em;"/> <button label="Observations" sclass="top" id="observations" style="margin-left:1%; font-size:1em;"/> <button label="Sign" sclass="top-disabled" id="sign" style="margin-left:1%; font-size:1em;"> <attribute name="onClick">{ Messagebox.show("Question is pressed. Are you sure?", "Question", Messagebox.OK | Messagebox.CANCEL, Messagebox.QUESTION); }</attribute> </button> </div> <vlayout style="padding-left:5px;"> <hlayout style="margin-top:7px;"> <combobox value="All" mold="rounded" width="100px"/> <combobox value=" Pick from the numbered list or keep typing to search" width="400px" mold="rounded" style="margin-left:-7px;"/> <div style="width:10px; height:22px; margin-left:-405px; margin-top:0px; background-color:#fbfbfb; border-top:1px solid #bbb; border-bottom:1px solid #bbb;"> <div style="width:5px; height:18px; border-right:1px solid #bbb; margin-top:2px;"></div> </div> </hlayout> </vlayout> </panelchildren> </panel> </columnchildren> <columnchildren width="24%"> <panel> <panelchildren> <div sclass="bigDiv" height="600px" width="250px" style="box-shadow:0 -2px 2px 1px #ddd inset;"> <vlayout sclass="module" id="module1" spacing="0px"> <div height="1em"> <div sclass="mainHeader"> <label value="Alerts (1 of 3)" style="font-size:.8em"/> </div> <div class="arrow-container"> <a class="previous" id="previous1" label="previous" disabled="true"/> <a class="next" id="next1" label="next"/> </div> </div> <div style="clear:both"/> <div id="pulldown1" sclass="pulldown"> <a label="show details" id="more1" w:onClick="this.$f('pulldown1').setSclass('pulldownSelected'), this.$f('alertDetailAspirin').setSclass('alert-detailsDisplayed'), this.$f('alertDetailHydro').setSclass('alert-detailsDisplayed'), this.$f('alertDetailWarfarinDDI1').setSclass('alert-detailsDisplayed'), this.$f('alertDetailWarfarinDDI2').setSclass('alert-detailsDisplayed'), hide('more1'), show('less1')"/> <a label="hide details" visible="false" id="less1" w:onClick="this.$f('pulldown1').setSclass('pulldown'), this.$f('alertDetailAspirin').setSclass('alert-details'), this.$f('alertDetailHydro').setSclass('alert-details'), this.$f('alertDetailWarfarinDDI1').setSclass('alert-details'), this.$f('alertDetailWarfarinDDI2').setSclass('alert-details'), hide('less1'), show('more1')"/> </div> <div sclass="alert" id="aspirinAlert"> <div sclass="alert-container"> <div> <label value="Aspirin Allergy" sclass="alert-title"/> <vlayout style="padding:8px"> <label value="Risk of (unknown)" sclass="alert-warning"/> <div style="margin-top:5px; color:#777;"> <label id="alertDetailAspirin" value="You ordered Aspirin and patient had ASPIRINS allergy documented by SIMPSON, HOMER" sclass="alert-details"/> </div> </vlayout> </div> </div> <div style="float:right; right:.2em;"> <image id="aspirinClose" src="http://www.famfamfam.com/lab/icons/silk/icons/cross.png" w:onClick="hide('aspirinAlert'), show('hydroAlert')"/> </div> </div> <div visible="false" sclass="alert" id="hydroAlert"> <div sclass="alert-container"> <div style="position:static"> <label value="Hydrocodone 7.5mg/Acetminophen 85mg Allergy" sclass="alert-title"/> <vlayout style="margin-top:3px"> <label value="Risk of bleeding" sclass="alert-warning"/> <label id="alertDetailHydro" value="Effect: The concurrent use of anticoagulants and salicylates may result in increased INR values and increase the risk of bleeding.; Mode of Action: Multiple processes are involved: 1) Salicylate doses greater than 3 gm daily decrease plasma prothrombin levels. 2) Salicylates may also displace anticoagulants from plasma protein binding sites. 3) Salicylates impair platelet function, resulting in prolonged bleeding time. 4) Salicylates may cause gastrointestinal bleeding due to irritation.; Clinical Significance: null" sclass="alert-details"/> </vlayout> </div> </div> <div style="float:right; right:.2em;"> <image id="hydroClose" src="http://www.famfamfam.com/lab/icons/silk/icons/cross.png" w:onClick="hide('hydroAlert'), show('DDIAlerts')"/> </div> </div> <div visible="false" sclass="alert" id="DDIAlerts"> <div sclass="alert-container"> <div style="position:static;"> <label value="Warfarin vs Sertraline" sclass="alert-title"/> <vlayout style="margin-top:3px"> <label value="Risk of stinky breath" sclass="alert-warning"/> <label id="alertDetailWarfarinDDI1" value="Effect: Concurrent administration of the selective serotonin reuptake inhibitors or serotonin-norepinephrine reuptake inhibitors may result in increased levels of and effects from the anticoagulant.; Mode of Action: Some selective serotonin reuptake inhibitors and duloxetine may inhibit the hepatic metabolism of some anticoagulants or may displace the anticoagulant from plasma protein binding sites. In addition, serotonin release by platelets plays a role in hemostasis, which may also increase the risk of bleeding.; Clinical Significance: null" sclass="alert-details"/> </vlayout> </div> <div style="position:static; margin-top:5px; padding-top:4px; border-top:1px solid #bbb;"> <label value="Warfarin vs Acetaminophen" sclass="alert-title2"/> <vlayout style="margin-top:3px;"> <label value="Risk of hives" sclass="alert-warning"/> <label id="alertDetailWarfarinDDI2" value="Hives are fun--especially bee hives! When I was 12, I ate a bee hive as a bet. I won the bet. I also don't fear death anymore." sclass="alert-details"/> </vlayout> </div> <div style="position:static; margin-top:5px; padding-top:4px; border-top:1px solid #bbb;"> <label value="Warfarin vs the World" sclass="alert-title2"/> </div> <vlayout style="margin-top:3px;"> <label value="Risk of ...meh..." sclass="alert-warning"/> </vlayout> </div> <div style="float:right; right:.2em;"> <image id="DDIClose" src="http://www.famfamfam.com/lab/icons/silk/icons/cross.png" w:onClick="hide('module1')"/> </div> </div> </vlayout> <vlayout sclass="module" id="module2" spacing="0px" style="margin-top:10px"> <div height="1em"> <div style="float:left; margin-top:-4px; margin-left:-2px;"> <image id="suggestionsClose" src="http://www.famfamfam.com/lab/icons/silk/icons/bullet_delete.png" w:onClick="hide('module2')"/> </div> <div sclass="mainHeader"> <label value="Suggestions (1)" style="font-size:.8em"/> </div> <div class="arrow-container"> <a class="previous" id="previous2" label="previous" disabled="true"/> <a class="next" id="next2" label="next"/> </div> </div> <div style="clear:both"/> <div id="pulldown2" sclass="pulldown"> <a label="show details" id="more2" w:onClick="this.$f('pulldown2').setSclass('pulldownSelected'), this.$f('suggestionsCBCDetail').setSclass('alert-detailsDisplayed'), hide('more2'), show('less2')"/> <a label="hide details" visible="false" id="less2" style="color:#777" w:onClick="this.$f('pulldown2').setSclass('pulldown'), this.$f('suggestionsCBCDetail').setSclass('alert-details'), hide('less2'), show('more2')"/> </div> <div visible="true" sclass="alert" id="aspirinAlert2"> <div sclass="alert-container"> <div> <label value="Suggestions for CBC" sclass="alert-title"/> <vlayout id="suggestionsCBCDetail" sclass="alert-details"> <a label="CBC handout"/> <a label="Blah blah"/> <a label="Blink blink"/> </vlayout> </div> </div> <div style="float:right; right:.2em;"> <image id="aspirinClose2" src="http://www.famfamfam.com/lab/icons/silk/icons/cross.png" w:onClick="hide('module2')"/> </div> </div> </vlayout> </div> </panelchildren> </panel> </columnchildren> </columnlayout> <popup id="popupCBC" width="250px"> <html><![CDATA[Select either "with Diff" or "no Diff"]]></html> </popup> </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"); } }