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

Bug on dates and TimeZones

43guest5.43.62.403a3vtusNov 10, 2016 6:27:19 PMlink

resources

index.zulzul<zk> <window border="normal" apply="org.zkoss.bind.BindComposer" viewModel="@id('vm') @init('pkg$.TestViewModel')"> <hbox> <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)" /> <label value="Calendar:" /><label value="@load(vm.firstFormatedCalendar)" /> </hbox> <hbox> <datebox id="seconddatebox" timeZone="Europe/Lisbon" value="@load(vm.secondDate) @save(vm.secondDate,before='reload')" disabled="true" /> <label value="time in millis:" /><label value="@load(vm.secondDateMillis)" /> <label value="Calendar:" /><label value="@load(vm.secondFormatedCalendar)" /> </hbox> <hbox> <datebox id="thirddatebox" timeZone="Europe/Lisbon" value="@load(vm.thirdDate) @save(vm.thirdDate,before='reload')" disabled="true" /> <label value="time in millis:" /><label value="@load(vm.thirdDateMillis)" /> <label value="Calendar:" /><label value="@load(vm.thirdFormatedCalendar)" /> </hbox> <hbox> <datebox id="fourthdatebox" timeZone="Europe/Lisbon" value="@load(vm.fourthDate) @save(vm.fourthDate,before='reload')" disabled="true" /> <label value="time in millis:" /><label value="@load(vm.fourthDateMillis)" /> <label value="Calendar:" /><label value="@load(vm.fourthFormatedCalendar)" /> </hbox> <hbox> <datebox id="manualdatebox" timeZone="Europe/Lisbon" value="@bind(vm.manualDate)" /> <label value="time in millis:" /><label value="@load(vm.manualDateMillis)" /> <label value="Calendar:" /><label value="@load(vm.manualFormatedCalendar)" /> </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; private String firstFormatedCalendar; private String secondFormatedCalendar; private String thirdFormatedCalendar; private String fourthFormatedCalendar; private String manualFormatedCalendar; @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(); this.firstFormatedCalendar = this.getFormattedCalendar(this.getCalendar(this.firstDate.getTime())); this.secondFormatedCalendar = this.getFormattedCalendar(this.getCalendar(this.secondDate.getTime())); this.thirdFormatedCalendar = this.getFormattedCalendar(this.getCalendar(this.thirdDate.getTime())); this.fourthFormatedCalendar = this.getFormattedCalendar(this.getCalendar(this.fourthDate.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; } public String getFirstFormatedCalendar() { return this.firstFormatedCalendar; } public String getSecondFormatedCalendar() { return this.secondFormatedCalendar; } public String getThirdFormatedCalendar() { return this.thirdFormatedCalendar; } public String getFourthFormatedCalendar() { return this.fourthFormatedCalendar; } @DependsOn("manualDate") public String getManualFormatedCalendar() { return this.manualDate!=null?this.getFormattedCalendar(this.getCalendar(manualDate.getTime())):null; } @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 String getFormattedCalendar(Calendar calendar){ return String.format("%s/%s/%s %sh:%smin Timezone:%s",calendar.get(Calendar.DAY_OF_MONTH),calendar.get(Calendar.MONTH),calendar.get(Calendar.YEAR),calendar.get(Calendar.HOUR_OF_DAY),calendar.get(Calendar.MINUTE),calendar.getTimeZone()); } 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)); } } }