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

Onselect

16hswain115.112.59.346i5g90Feb 14, 2013 1:06:30 PMlink

resources

index.zulzul<?page title="User Interface" contentType="text/html;charset=UTF-8"?> <zk> <window title="User Interface" border="normal" apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('UserInterfaceViewModel')" height="100%" width="100%"> <tabbox id="mainTab"> <tabs> <tab label="Tab1" /> </tabs> <tabpanels> <tabpanel style="color:#333399;"> <include src="core/tab1.zul" /> </tabpanel> </tabpanels> </tabbox> </window> </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("Saves"); } } popup_window.zulzul<zk xmlns:x="xhtml" xmlns:zk="zk"> <window apply="org.zkoss.bind.BindComposer" width="700px" height="400px" title="Select Document" mode="modal" border="normal" closable="true" viewModel="@id('vm') @init('PopUpViewModel')"> <x:table border="0"> <x:tr> <x:td> <textbox value="@bind(documentRSN)"></textbox> </x:td> <x:td> <button label="OK" onClick="@command('doPickDocumentRSN')"></button> </x:td> </x:tr> </x:table> </window> </zk> tab1.zulzul<zk xmlns:x="xhtml" xmlns:zk="zk"> <window apply="org.zkoss.bind.BindComposer" width="100%" height="100%" title="Tab1" border="normal" closable="true" viewModel="@id('vm') @init('Tab1ViewModel')"> <groupbox closable="false" vflex="1" width="100%" height="100%"> <listbox vflex="1" model="@load(vm.documentList)" selectedItem="@bind(vm.selectedDocument)"> <listhead> <listheader label="DocumentRSN" align="center"> </listheader> <listheader label="DocumentDesc" align="center"> </listheader> <listheader label="DocumentOrder" align="center"> </listheader> </listhead> <template name="model" sclass="vertical-scroll" var="each"> <listitem onClick="@command('doPickDocument',documentRSN=each.documentRSN)"> <listcell label="@load(each.documentRSN)" /> <listcell label="@load(each.documentDesc)" /> <listcell label="@load(each.documentOrder)" /> </listitem> </template> </listbox> <x:table cellpadding="1" align="center"> <x:tr> <x:td> <textbox value="@bind(documentRSN)"></textbox> </x:td> <x:td align="center"> <button label="Pick" width="100px" onClick="@command('doPickDocumentRSN')"> </button> </x:td> </x:tr> </x:table> </groupbox> </window> </zk>tab2.zulzul<zk xmlns:x="xhtml" xmlns:zk="zk"> <window apply="org.zkoss.bind.BindComposer" width="100%" height="100%" title="Tab2" border="normal" closable="true" viewModel="@id('vm') @init('Tab2ViewModel')"> <groupbox closable="false" height="100%" vflex="1" width="100%"> <listbox vflex="1" model="@load(vm.documentList)" selectedItem="@bind(vm.selectedDocument)"> <listhead > <listheader label="DocumentRSN" align="center"> </listheader> <listheader label="DocumentDesc" align="center"> </listheader> <listheader label="DocumentOrder" align="center"> </listheader> </listhead> <template name="model" sclass="vertical-scroll" var="each"> <listitem > <listcell label="@load(each.documentRSN)" /> <listcell label="@load(each.documentDesc)" /> <listcell label="@load(each.documentOrder)" /> </listitem> </template> </listbox> <x:table width="100%" cellpadding="1" align="center"> <x:tr> <x:td align="center"> <button label="Accept" width="100px" onClick="@command('acceptDocumentRSN')"> </button> </x:td> </x:tr> </x:table> </groupbox> </window> </zk>PopUpViewModel.javajavaimport java.util.HashMap; import java.util.Map; import org.zkoss.bind.annotation.AfterCompose; import org.zkoss.bind.annotation.BindingParam; import org.zkoss.bind.annotation.Command; import org.zkoss.bind.annotation.ContextParam; import org.zkoss.bind.annotation.ContextType; import org.zkoss.bind.annotation.ExecutionArgParam; import org.zkoss.bind.annotation.NotifyChange; import org.zkoss.zk.ui.Component; import com.csdc.java.poc.TabArguement.TabMode; public class PopUpViewModel { private int documentRSN; /** * Automatically called after widow is loaded * * @param view * @param folderSubTabArgs */ @AfterCompose public void afterCompose(@ContextParam(ContextType.VIEW) Component view, @ExecutionArgParam("documentRSN") int documentRSN) { this.documentRSN = documentRSN; } /** * On click of all button open people page to select a people */ @SuppressWarnings("unchecked") @Command public void doPickDocumentRSN(@ContextParam(ContextType.VIEW) Component comp) { Map maps = new HashMap(); maps.put("PARENT_VIEW", comp); maps.put("peopleTabArg", new TabArguement(TabMode.PICK)); UserInterfaceViewModel.addAnyTab(maps, "Tab2", "/core/tab2.zul"); } @Command @NotifyChange("documentRSN") public void acceptSelectedDocument(@BindingParam("documentRSN") int documentRSN) { this.documentRSN = documentRSN; } public void setDocumentRSN(int documentRSN) { this.documentRSN = documentRSN; } public int getDocumentRSN() { return documentRSN; } } Tab1ViewModel.javajavaimport java.io.Serializable; import java.util.HashMap; import java.util.Map; import org.zkoss.bind.annotation.AfterCompose; import org.zkoss.bind.annotation.BindingParam; import org.zkoss.bind.annotation.Command; import org.zkoss.bind.annotation.ContextParam; import org.zkoss.bind.annotation.ContextType; import org.zkoss.bind.annotation.NotifyChange; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.Executions; import org.zkoss.zul.ListModelList; import com.csdc.java.poc.TabArguement.TabMode; public class Tab1ViewModel { private ListModelList<Document> documentList; private Document selectedDocument; private int documentRSN; /** * Automatically called after widow is loaded * * @param view * @param folderSubTabArgs */ @AfterCompose public void afterCompose(@ContextParam(ContextType.VIEW) Component view) { loadDocumentList(); } private void loadDocumentList() { documentList = new ListModelList<Document>(); for (int row = 1; row <= 10; row++) { Document document = new Document(); document.setDocumentRSN(row); document.setDocumentDesc("documentDesc"+row); document.setDocumentOrder(row); documentList.add(document); } } /** * Handles double click of pick window row. * * @param view * @param infoValue * @param infoCode */ @SuppressWarnings("unchecked") @Command public void doPickDocument( @ContextParam(ContextType.VIEW) Component view, @BindingParam("documentRSN") String documentRSN) { Map arguments = new HashMap(); arguments.put("documentRSN", documentRSN); Executions.getCurrent().createComponents( "/core/popup_window.zul", view, arguments); } /** * On click of all button open people page to select a people */ @SuppressWarnings("unchecked") @Command public void doPickDocumentRSN(@ContextParam(ContextType.VIEW) Component comp) { Map maps = new HashMap(); maps.put("PARENT_VIEW", comp); maps.put("peopleTabArg", new TabArguement(TabMode.PICK)); UserInterfaceViewModel.addAnyTab(maps, "Tab2", "/core/tab2.zul"); } @Command @NotifyChange("documentRSN") public void acceptSelectedDocument(@BindingParam("documentRSN") int documentRSN) { this.setDocumentRSN(documentRSN); } public ListModelList<Document> getDocumentList() { return documentList; } public void setDocumentList(ListModelList<Document> documentList) { this.documentList = documentList; } public void setSelectedDocument(Document selectedDocument) { this.selectedDocument = selectedDocument; } public Document getSelectedDocument() { return selectedDocument; } public void setDocumentRSN(int documentRSN) { this.documentRSN = documentRSN; } public int getDocumentRSN() { return documentRSN; } public class Document implements Serializable { private static final long serialVersionUID = 14545456347L; int documentRSN; String documentDesc; int documentOrder; public int getDocumentRSN() { return documentRSN; } public void setDocumentRSN(int documentRSN) { this.documentRSN = documentRSN; } public String getDocumentDesc() { return documentDesc; } public void setDocumentDesc(String documentDesc) { this.documentDesc = documentDesc; } public int getDocumentOrder() { return documentOrder; } public void setDocumentOrder(int documentOrder) { this.documentOrder = documentOrder; } } } Tab2ViewModel.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 Tab2ViewModel extends GenericForwardComposer{ public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); } public void onClick$btn(Event e) throws InterruptedException{ Messagebox.show("Hi btn"); } } TabArguement.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 TabArguement extends GenericForwardComposer{ public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); } public void onClick$btn(Event e) throws InterruptedException{ Messagebox.show("Hi btn"); } } UserInterfaceViewModel.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 UserInterfaceViewModel extends GenericForwardComposer{ public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); } public void onClick$btn(Event e) throws InterruptedException{ Messagebox.show("Hi btn"); } }