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 AMlinkBug on dates and TimeZones
50guest172.70.126.1353a3vtusMar 15, 2022 8:16:57 PMlinkresources
index.zulzul<zk>
<window border="normal" apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('pkg$.TestViewModel')">
<hbox>
<label value="Example 1: "/>
<datebox id="firstdatebox" timeZone="Europe/Lisbon"
value="@load(vm.firstDate) @save(vm.firstDate,before='reload')" disabled="true"/>
<label value="time in millis:" /><label value="@load(vm.firstDateMillis)" />
</hbox>
<button label="reload" onClick="@command('reload')" />
</window>
</zk>
TestViewModel.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.bind.annotation.Command;
import org.zkoss.bind.annotation.DependsOn;
import org.zkoss.bind.annotation.Init;
import org.zkoss.bind.annotation.NotifyChange;
import org.zkoss.bind.annotation.BindingParam;
import org.zkoss.zk.au.*;
import org.zkoss.zk.au.out.*;
import org.zkoss.zul.*;
import java.util.*;
import java.util.Calendar;
import java.lang.*;
import org.zkoss.lang.Library;
import java.text.*;
public class TestViewModel {
private Date firstDate;
private Date secondDate;
private Date thirdDate;
private Date fourthDate;
private Date manualDate;
@Init
public void init() {
org.zkoss.lang.Library.setProperty("org.zkoss.web.preferred.timeZone",
"UTC");
this.firstDate = this.getCalendar(10, Calendar.JANUARY, 1970).getTime();
this.secondDate = this.getCalendar(10, Calendar.JULY, 1970).getTime();
this.thirdDate = this.getCalendar(10, Calendar.JANUARY, 2016).getTime();
this.fourthDate = this.getCalendar(10, Calendar.JULY, 2016).getTime();
}
public Date getFirstDate() {
return firstDate;
}
public Long getFirstDateMillis() {
return firstDate != null ? firstDate.getTime() : null;
}
public void setFirstDate(Date firstDate) {
print(this.firstDate, "first", "before");
this.firstDate = firstDate;
print(this.firstDate, "first", "after");
}
public Date getSecondDate() {
return secondDate;
}
public Long getSecondDateMillis() {
return secondDate != null ? secondDate.getTime() : null;
}
public void setSecondDate(Date secondDate) {
print(this.secondDate, "second", "before");
this.secondDate = secondDate;
print(this.secondDate, "second", "after");
}
public Date getThirdDate() {
return thirdDate;
}
public Long getThirdDateMillis() {
return thirdDate != null ? thirdDate.getTime() : null;
}
public void setThirdDate(Date thirdDate) {
print(this.thirdDate, "third", "before");
this.thirdDate = thirdDate;
print(this.thirdDate, "third", "after");
}
public Date getFourthDate() {
return fourthDate;
}
public Long getFourthDateMillis() {
return fourthDate != null ? fourthDate.getTime() : null;
}
public void setFourthDate(Date fourthDate) {
print(this.fourthDate, "fourth", "before");
this.fourthDate = fourthDate;
print(this.fourthDate, "fourth", "after");
}
public Date getManualDate() {
return manualDate;
}
@DependsOn("manualDate")
public Long getManualDateMillis() {
return manualDate != null ? manualDate.getTime() : null;
}
public void setManualDate(Date manualDate) {
this.manualDate = manualDate;
}
@Command
public void reload() {
System.out.println("reload processed!");
}
private Calendar getCalendar(int day, int month, int year) {
Calendar calendar = Calendar.getInstance(TimeZone
.getTimeZone("Europe/Lisbon"));
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month);
calendar.set(Calendar.DAY_OF_MONTH, day);
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
return calendar;
}
private Calendar getCalendar(long millis) {
Calendar calendar = Calendar.getInstance(TimeZone
.getTimeZone("Europe/Lisbon"));
calendar.setTimeInMillis(millis);
return calendar;
}
private void print(Date date, String position, String moment) {
if (date != null) {
System.out.println(MessageFormat.format(
"{0} date in millis {1} reload:{2}", position, moment,
String.valueOf(date.getTime())));
} else {
System.out.println(MessageFormat.format(
"{0} date in millis {1} reload:", position, moment));
}
}
}