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 :
Object hashcode different with ZK form binding
2YannUnil172.69.108.13540rj0kApr 19, 2024 1:18:08 PMlinkObject hashcode different with ZK form binding
1YannUnil172.69.108.13040rj0kApr 19, 2024 1:04:31 PMlinkfont awesome effects
1guest172.71.166.21232nla3hApr 18, 2024 6:04:43 PMlinkfont awesome effects
245guest172.71.166.21220t2jmoApr 18, 2024 6:04:41 PMlinkZK-5696
1JamesChu162.158.187.3739iuvhmApr 18, 2024 10:33:52 AMlinkListbox colspan header version 2
3guest172.71.183.199jkpp6qApr 17, 2024 1:54:19 PMlinkZK-5695
1guest162.158.90.1402is2rctApr 17, 2024 10:23:20 AMlinkLocalDate in datebox
2guest172.70.243.516v49n7Apr 17, 2024 6:05:17 AMlinkLocalDate in datebox
1guest172.70.243.516v49n7Apr 17, 2024 6:04:18 AMlinkLocalDate in datebox
1guest172.70.243.511m6i0gcApr 17, 2024 6:04:04 AMlinkPropertyAdmin
148DavidTRegenstrief149.163.130.4430gii29Dec 9, 2016 5:22:31 AMlinkresources
index.zulzul<zk>
<window title="hello" apply="pkg$.TestComposer" height="600px">
<div>Welcome to ZK Fiddle , run it right now!</div>
<!--
<borderlayout>
<north>
-->
<groupbox id="propertyValueGroup" style="background-color:#e6ffe6;margin:20px" height="100%">
<button id="create_property_value" label="Create Prop Value"/>
<caption label="Property Values" />
<grid id="propertyValueGrid" height="100%" model="${$composer.propertyValueModel}">
<custom-attributes org.zkoss.zul.grid.rod="true"/>
<columns>
<!--
<column label="Id"/>
-->
<column label="Name" />
<column label="Entity Value" />
<column label="Entity Id" />
<column label="Value" />
<column label="Action" />
</columns>
<template name="model">
<row> <!-- id="PV_ROW_${each.id}"> -->
<!--
<label value="${each.id}"/>
-->
<a label="${each.propertyName}"/>
<label value="${each.propertyEntityValue}"/>
<label value="${each.propertyEntityId}"/>
<label value="${each.propertyValue}"/>
<a label="delete"/>
</row>
</template>
</grid>
</groupbox>
<!--
</north>
<center>
<hlayout>
<groupbox id="propertyDefinitionGroup" height="400px" style="background-color:#e6ffe6;">
<button id="create_property_def" label="Create Property Definition"/>
<caption label="Property Definitions" />
<hlayout height="380px">
<grid id="propertyDefGrid" vflex="1" hflex="1" model="${$composer.propertyDefModel}">
<custom-attributes org.zkoss.zul.grid.rod="true"/>
<columns>
<column label="Name" />
<column label="Entity Value" />
<column label="Entity Id" />
<column label="Value" />
<column label="Action" />
</columns>
<template name="model">
<row>
<a label="${each.propertyName}"/>
<label value="${each.propertyEntityValue}"/>
<label value="${each.propertyEntityId}"/>
<label value="${each.propertyValue}"/>
<a id="${each.propertyName}" label="delete"/>
</row>
</template>
</grid>
</hlayout>
</groupbox>
<groupbox id="propertyAttrValueGroup" height="400px" style="background-color:#e6ffe6;">
<button id="create_property_entity" label="Create Prop Entity"/>
<caption label="Property Entities" />
<hlayout height="380px">
<grid id="packageBuildGrid" vflex="1" hflex="1" model="${$composer.propertyEntityModel}">
<custom-attributes org.zkoss.zul.grid.rod="true"/>
<columns>
<column label="Name" />
<column label="Entity Value" />
<column label="Entity Id" />
<column label="Value" />
<column label="Action" />
</columns>
<template name="model">
<row>
<a label="${each.propertyName}"/>
<label value="${each.propertyEntityValue}"/>
<label value="${each.propertyEntityId}"/>
<label value="${each.propertyValue}"/>
<a id="${each.propertyName}" label="delete"/>
</row>
</template>
</grid>
</hlayout>
</groupbox>
</hlayout>
</center>
</borderlayout>
-->
</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.*;
import java.util.List;
import java.util.Date;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.util.HashMap;
public class TestComposer extends GenericForwardComposer{
PropertyValue[] pv = new PropertyValue[] {
// String propertyName, String EntityValue, int EntityId, int EntityValueSysId, String Value, String appInstance, int multiValuedSeqNum, Date createDate, Date updateDate)
new PropertyValue("CDS.PACKAGE_BUILD_REF", "1" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "2" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "3" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "4" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "5" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "6" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "7" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "8" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "9" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date()),
new PropertyValue("CDS.PACKAGE_BUILD_REF", "10" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date())
};
// PropertyDefinition[] pd = new PropertyDefinition[] {
// new PropertyDefinition("CDS.PACKAGE_BUILD_REF", "1" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date())
// };
//
// PropertyEntity[] pe = new PropertyEntity[] {
// new PropertyEntity("CDS.PACKAGE_BUILD_REF", "1" , 800, 1, "RENAL_STUDY", null, 0, new Date(), new Date())
// };
List<PropertyValue> pvList = new ArrayList<PropertyValue>(Arrays.asList(pv));
Groupbox propertyValueGroup;
Grid propertyValueGrid;
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
}
public void onClick$btn(Event e) throws InterruptedException{
Messagebox.show("Hi btn");
}
public ListModel<PropertyValue> getPropertyValueModel() {
return new SimpleListModel(pvList);
}
public void onClick$create_property_value(Event event) {
Map<String, Object> args = new HashMap<String,Object>();
args.put("callingController", this);
Window window = (Window)Executions.createComponents("propertyValueDetail.zul", null, args);
window.doModal();
}
public void addPV(PropertyValue newPV) {
pvList.add(newPV);
propertyValueGrid.setModel(getPropertyValueModel());
propertyValueGrid.renderAll();
}
// public ListModel<PropertyValue> getPropertyDefModel() {
// return new SimpleListModel(pd);
// }
//
// public ListModel<PropertyValue> getPropertyEntityModel() {
// return new SimpleListModel(pe);
// }
}
PropertyValue.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.*;
import java.util.Date;
public class PropertyValue { //extends ModelBase<PropertyValue> {
private String propertyName = null;
private int propertyEntityId = 0;
private String propertyEntityValue = null;
private String applicationInstance = null;
private int multiValuedSequenceNumber = 0;
private Date createDate = null;
private Date updateDate = null;
private String propertyValue = null;
private int propertyEntityValueSysId = 0;
public PropertyValue() {
}
public PropertyValue(final PropertyValue pv2) {
if (pv2 == null) {
return;
}
setPropertyName(pv2.getPropertyName());
setPropertyEntityId(pv2.getPropertyEntityId());
setPropertyEntityValue(pv2.getPropertyEntityValue());
setApplicationInstance(pv2.getApplicationInstance());
setMultiValuedSequenceNumber(pv2.getMultiValuedSequenceNumber());
setCreateDate(pv2.getCreateDate());
setUpdateDate(pv2.getUpdateDate());
setPropertyValue(pv2.getPropertyValue());
}
public PropertyValue(String propertyName, String propertyEntityValue, int propertyEntityId, int propertyEntityValueSysId, String propertyValue, String applicationInstance, int multiValuedSequenceNumber, Date createDate, Date updateDate) {
this.propertyName = propertyName;
this.propertyEntityValue = propertyEntityValue;
this.propertyEntityValueSysId = propertyEntityValueSysId;
this.propertyEntityId = propertyEntityId;
this.propertyValue = propertyValue;
this.applicationInstance = applicationInstance;
this.multiValuedSequenceNumber = multiValuedSequenceNumber;
this.createDate = createDate;
this.updateDate = updateDate;
}
public String getPropertyName() {
return this.propertyName;
}
/**
* @param propertyName
* the propertyName to set
*/
public void setPropertyName(final String propertyName) {
this.propertyName = propertyName;
}
/**
* @return the propertyEntityId
*/
public int getPropertyEntityId() {
return this.propertyEntityId;
}
/**
* @param propertyEntityId
* the propertyEntityId to set
*/
public void setPropertyEntityId(final int propertyEntityId) {
this.propertyEntityId = propertyEntityId;
}
/**
* @return the propertyEntityValue
*/
public String getPropertyEntityValue() {
return getPropertyEntityValueCode();
}
/**
* @return the propertyEntityValueCode
*/
public String getPropertyEntityValueCode() {
return this.propertyEntityValue;
}
/**
* @param propertyEntityValue
* the propertyEntityValue to set
*/
public void setPropertyEntityValue(final String propertyEntityValue) {
setPropertyEntityValueCode(propertyEntityValue);
}
/**
* @param propertyEntityValueCode
* the propertyEntityValueCode to set
*/
public void setPropertyEntityValueCode(final String propertyEntityValueCode) {
this.propertyEntityValue = propertyEntityValueCode;
}
/**
* @return the institutionId
*/
public int getPropertyEntityValueSysId() {
return this.propertyEntityValueSysId;
}
/**
* @param propertyEntityValueSysId
* the propertyEntityValueSysId to set
*/
public void setPropertyEntityValueSysId(final int propertyEntityValueSysId) {
this.propertyEntityValueSysId = propertyEntityValueSysId;
}
/**
* @return the applicationInstance
*/
public String getApplicationInstance() {
return this.applicationInstance;
}
/**
* @param applicationInstance
* the applicationInstance to set
*/
public void setApplicationInstance(final String applicationInstance) {
this.applicationInstance = applicationInstance;
}
/**
* @return the multiValuedSequenceNumber
*/
public int getMultiValuedSequenceNumber() {
return this.multiValuedSequenceNumber;
}
/**
* @param multiValuedSequenceNumber
* the multiValuedSequenceNumber to set
*/
public void setMultiValuedSequenceNumber(final int multiValuedSequenceNumber) {
this.multiValuedSequenceNumber = multiValuedSequenceNumber;
}
/**
* @return the createDate
*/
public Date getCreateDate() {
return this.createDate;
}
/**
* @param d
* the createDate to set
*/
public void setCreateDate(final Date d) {
this.createDate = d;
}
/**
* @return the updateDate
*/
public Date getUpdateDate() {
return this.updateDate;
}
/**
* @param updateDate
* the updateDate to set
*/
public void setUpdateDate(final Date updateDate) {
this.updateDate = updateDate;
}
/**
* @return the propertyValue
*/
public String getPropertyValue() {
return this.propertyValue;
}
/**
* @param propertyValue
* the propertyValue to set
*/
public void setPropertyValue(final String propertyValue) {
this.propertyValue = propertyValue;
}
public PropertyValue copy() {
return new PropertyValue(this);
}
public String getId() {
return String.format("%s_%s_%s_%s", propertyName, propertyValue, propertyEntityId, propertyEntityValue);
}
}
propertyValueDetail.zulzul<zk>
<window id="propertyDetailDlg" border="normal" title="hello" apply="pkg$.PropertyValueDetail" width="300px" height="400px">
<custom-attributes callingController="${args.callingController}"/>
<div>Welcome to ZK Fiddle , run it right now!</div>
<grid>
<columns/>
<rows>
<row>
<cell><label value="Name" tooltip="Property Definition Name"/></cell>
<cell><textbox id="property_def_name" value="${args.propDefName}"/></cell>
</row>
<row >
<cell><label value="Value" tooltip="Property Value"/></cell>
<cell><textbox id="property_value" value="${args.propValue}"/></cell>
</row>
<row >
<cell><label value="Entity ID" tooltip="Property Entity ID e.g., 100,800, etc."/></cell>
<cell><textbox id="property_entity_id" value="${args.propEntityId"/></cell>
</row>
<row>
<cell><label value="Entity Value" tooltip="Property Entity Value, e.g., user name, location name, org."/></cell>
<cell><textbox id="property_entity_value" value="${args.propEntityValue}"/></cell>
</row>
<row>
<cell><label value="Entity Value System" tooltip="Property Value System, e.g., 1"/></cell>
<cell><textbox id="property_entity_value_system" value="${args.propEntityValueSys}"/></cell>
</row>
<row>
<cell><label value="Application Instance" tooltip="Application Instance (name of application - allows properties unique to an application instance."/> </cell>
<cell><textbox id="app_instance" value="${args.appInstance}"/></cell>
</row>
<row>
<cell><label value="Multiple Value Sequence" tooltip="Multiple Value Sequence, some property values can be multi-row, in those cases unique sequence value is required."/> </cell>
<cell><textbox id="multiple_value_sequence" value="${args.multiValueSeq}"/></cell>
</row>
</rows>
</grid>
<hlayout>
<button id="saveBtn" label="Save" />
<a id="cancelBtn" label="cancel"/>
</hlayout>
</window>
</zk>
PropertyValueDetail.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.*;
import java.util.Date;
public class PropertyValueDetail extends GenericForwardComposer{
Window propertyDetailDlg;
Textbox property_def_name;
Textbox property_value;
Textbox property_entity_id;
Textbox property_entity_value;
Textbox property_entity_value_system;
Textbox app_instance;
Textbox multiple_value_sequence;
TestComposer callingController;
PropertyValue newPV;
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
this.callingController = (TestComposer) arg.get("callingController");
}
public void onClick$btn(Event e) throws InterruptedException{
Messagebox.show("Hi btn");
}
public void onClick$cancelBtn(Event e) {
propertyDetailDlg.detach();
}
public void onClick$saveBtn(Event e) {
newPV = new PropertyValue(
property_def_name.getValue(),
property_entity_value.getValue(),
Integer.parseInt(property_entity_id.getValue()),
Integer.parseInt(property_entity_value_system.getValue()),
property_value.getValue(),
app_instance.getValue(),
Integer.parseInt(multiple_value_sequence.getValue()),
new Date(), new Date());
callingController.addPV(newPV);
propertyDetailDlg.detach();
}
}