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

Another new ZK fiddle

5guest113.160.40.221170psuMar 25, 2013 9:21:50 AMlink

resources

index.zulzul<zk> <vbox apply="pkg$.demo.GanttZoomComposer"> <label value="Repartition of operations" zclass="h2"/> <chart id="gantt" width="1000" height="700" type="gantt" threeD="false" fgAlpha="128" dateFormat="yyyy/MM/dd" /> </vbox> </zk>GanttZoomComposer.javajavapublic class GanttZoomComposer extends GenericForwardComposer { private SessionVo currentSession = new SessionVo(); private Chart gantt; private GanttModel ganttModel; private GanttChartEngine gCE = new GanttChartEngine(); /** * */ public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); //choose color set gCE.setColorSet(3); //attach default model to gantt gantt.setModel(gCE.getModel()); ganttModel = new GanttModel(); //update Gantt mondel updateGanttModel(); currentSession.setAttribute(MappingAddresses.GANTT_ZOOM_COMPOSER, this); } /** * Display selected data on the gantt model */ public void updateGanttModel(){ System.out.println("GanttZoomComposer"); //get data from the session List<OperationVo> listOperationVo = (List<OperationVo>) currentSession.getAttribute(MappingAddresses.ALL_OPERATIONS_VO); ganttModel = new GanttModel(); //Display all operations on the gantt for(OperationVo operationVo: listOperationVo){ GanttTask gTask = new GanttTask(operationVo.getResourceNumber()+". " +operationVo.getResourceName() , gCE.date(operationVo.getFrom()), gCE.date(operationVo.getTo()) , 0.0); System.out.println("GTask " + gTask.getDescription() + " - " + gTask.getStart() + " - " + gTask.getEnd()); ganttModel.addValue(operationVo.getProductNumber()+". " + operationVo.getProductName(), gTask); } gantt.setModel(ganttModel); } }GanttChartEngine.javajavapublic class GanttChartEngine extends JFreeChartEngine { /** * */ private static final long serialVersionUID = 3043595160218812633L; public static String task1Color; public static String task2Color; public static String shadowColor; public static String completeColor; public static String incompleteColor; public static boolean graidentBar = false; private final Calendar calendar = Calendar.getInstance(); /** * * @param graidentBar */ public static void setGraidentBar(boolean graidentBar) { GanttChartEngine.graidentBar = graidentBar; } /** * */ public GanttChartEngine() { } /** * @param jfchart * @param chart */ public boolean prepareJFreeChart(JFreeChart jfchart, Chart chart) { if (task1Color == null) return false; CategoryPlot plot = (CategoryPlot) jfchart.getPlot(); GanttRenderer renderer = (GanttRenderer) plot.getRenderer(); renderer.setBarPainter(graidentBar ? new GradientBarPainter() : new StandardBarPainter()); renderer.setIncompletePaint(Color.decode(incompleteColor)); renderer.setCompletePaint(Color.decode(completeColor)); renderer.setShadowPaint(Color.decode(shadowColor)); renderer.setSeriesPaint(0, Color.decode(task1Color)); renderer.setSeriesPaint(1, Color.decode(task2Color)); return false; } /** * * @param value */ public void setColorSet(int value) { switch (value) { case 1: graidentBar = false; task1Color = "#99BD51"; task2Color = "#006633"; shadowColor = "#EBF6CA"; completeColor = "#006633"; incompleteColor = "#99BD51"; break; case 2: graidentBar = true; task1Color = "#0090FF"; task2Color = "#00CC00"; shadowColor = "#EBF6CA"; completeColor = "#00CC00"; incompleteColor = "#00CC00"; break; case 3: graidentBar = true; task1Color = "#ABABAB"; task2Color = "#6A6A6A"; shadowColor = "#EBF6CA"; completeColor = "#A0A0A0"; incompleteColor = "#434E54"; break; case 0: default: // Default Color task1Color = null; } } /** * * @param timestampDate * @return */ public Date date(String timestampDate) { String strYear = timestampDate.substring(0, timestampDate.indexOf("-")); timestampDate = timestampDate.substring(strYear.length()+1); String strMonth = timestampDate.substring(0, timestampDate.indexOf("-")); timestampDate = timestampDate.substring(strMonth.length()+1); String strDay = timestampDate.substring(0, timestampDate.indexOf(" ")); calendar.set(Integer.parseInt(strYear), Integer.parseInt(strMonth)-1, Integer.parseInt(strDay)); Date result = calendar.getTime(); return result; } /** * * @param year * @param month * @param day * @return */ public Date date(int year, int month, int day) { final java.util.Calendar calendar = java.util.Calendar.getInstance(); calendar.set(year, month-1, day); final Date result = calendar.getTime(); return result; } public GanttModel getModel() { GanttModel ganttmodel = new GanttModel(); int theYear = calendar.get(Calendar.YEAR); boolean complete = true; ganttmodel.addValue("Actual", new GanttTask("Write Proposal", date(theYear,4,1), date(theYear,4,3), complete ? 1.0 : 0.0)); return ganttmodel; } }