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 AMlinkAnother new ZK fiddle
1guest109.69.133.66r1v3vqJan 31, 2019 11:04:24 AMlinkresources
index.zulzul<zk>
<div sclass="module" apply="pkg$.PdvMclEscl">
<hlayout>
<button id="btnImport" class="buttondefault" label="Importa File" upload="true,maxsize=300"/>
<button id="btnSave" class="buttondefault" label="Salva Modifiche"/>
</hlayout>
<separator height="30px" />
<vlayout>
<button id="btnAdd" class="module" label="Aggiungi riga"/>
<grid id="gridPdv" hflex="min" >
<!-- mold="paging" pageSize="15" -->
<columns>
<column label="Gruppo" hflex="min" />
<column label="Punto Vendita" hflex="min" />
<column label="Periodo" hflex="min" />
<column label="Data Generato" hflex="min" />
<column label="Data Completato" hflex="min" />
<column label="Cancella" hflex="min" />
</columns>
</grid>
</vlayout>
</div>
</zk>PdvMclEscl.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;
import java.util.Map;
public class PdvMclEscl {
private String group, pdv, period;
private int canWrite;
private Date dateStart, dateEnd;
public PdvMclEscl(String group, String pdv, String period,
Date dateStart, Date dateEnd, int canWrite) {
this.group = group;
this.pdv = pdv;
this.period = period;
this.dateStart = dateStart;
this.dateEnd = dateEnd;
this.canWrite = canWrite;
}
public String getGroup() {
return group;
}
public void setGroup(String group) {
this.group = group;
}
public String getPdv() {
return pdv;
}
public void setPdv(String pdv) {
this.pdv = pdv;
}
public String getPeriod() {
return period;
}
public void setPeriod(String period) {
this.period = period;
}
public Date getDateStart() {
return dateStart;
}
public void setDateStart(Date dateStart) {
this.dateStart = dateStart;
}
public Date getDateEnd() {
return dateEnd;
}
public void setDateEnd(Date dateEnd) {
this.dateEnd = dateEnd;
}
public int getEdit() {
return canWrite;
}
public void setEdit(int canWrite) {
this.canWrite = canWrite;
}
}
EsclPdvMcl.javajavaimport java.io.FileInputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.zkoss.util.media.Media;
import org.zkoss.util.resource.Labels;
import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.Events;
import org.zkoss.zk.ui.event.UploadEvent;
import org.zkoss.zul.Button;
import org.zkoss.zul.Combobox;
import org.zkoss.zul.Comboitem;
import org.zkoss.zul.Datebox;
import org.zkoss.zul.Grid;
import org.zkoss.zul.Image;
import org.zkoss.zul.Label;
import org.zkoss.zul.ListModelList;
import org.zkoss.zul.Messagebox;
import org.zkoss.zul.Row;
import org.zkoss.zul.RowRenderer;
import org.zkoss.zul.Rows;
import org.zkoss.zul.Textbox;
import com.portal.module.BaseComposer;
import pkg$.PdvMclEscl;
import com.portal.session.SessionManager;
import com.smartxls.WorkBook;
public class EsclPdvMcl extends GenericForwardComposer{
private static final long serialVersionUID = 1L;
private List<PdvMclEscl> PdvMcl = new ArrayList<PdvMclEscl>();
ListModelList<PdvMclEscl> lMod;
private Grid gridPdv;
private Rows rows;
private Map<String, String> lstPrd;
private Button btnImport, btnAdd, btnSave;
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
btnAdd.addEventListener(Events.ON_CLICK, new EventListener() {
public void onEvent(Event event) {
lMod.add(0, new PdvMclEscl("", "", "", null, null, 1));
}
});
buildGrid(PdvMcl, gridPdv);
}
@SuppressWarnings({ "rawtypes", "unchecked" })
protected void buildGrid(List<PdvMclEscl> pdvMcl, Grid gridPdv) {
Statement sqlStmt = null;
ResultSet rs = null;
try {
sqlStmt = sessionMngr.getConnectionObj(moduleItem.getSchemaPre(), moduleItem.getSchemaPost()).createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs = SessionManager.getData(SQL_LSTPDV, sqlStmt);
if(rs!=null)
while (rs.next()) {
PdvMcl.add(new PdvMclEscl("201902", "145", "GiroVisita 2019-02", null, null, null));
}
} catch (Exception e) {
labelerror.setValue(Labels.getLabel("module.default.inerror"));
e.printStackTrace();
}
finally { try {if (rs!=null) rs.close(); rs = null; if (sqlStmt!=null) sqlStmt.close(); }
catch (Exception e) {} }
lMod = new ListModelList(PdvMcl);
gridPdv.setModel(lMod);
gridPdv.setRowRenderer(new PdvItemRenderer(this));
}
/*
* Classi aggiuntive
*/
@SuppressWarnings("rawtypes")
class PdvItemRenderer implements RowRenderer {
@SuppressWarnings("unused")
private EsclPdvMCl _comp;
public PdvItemRenderer(EsclPdvMCl esclPdvMCl) {
_comp = esclPdvMCl;
}
@SuppressWarnings("unchecked")
@Override
public void render(Row row, Object data, int index) throws Exception {
Datebox dstart = new Datebox(((PdvMclEscl)data).getDateStart());
dstart.setDisabled(true);
Datebox dend = new Datebox(((PdvMclEscl)data).getDateStart());
dend.setDisabled(true);
Image imgdelete = null;
if(((PdvMclEscl)data).getEdit()>0) {
Textbox group = new Textbox(((PdvMclEscl)data).getGroup());
Textbox pdv = new Textbox(((PdvMclEscl)data).getPdv());
Combobox period = buildComboPeriodi((String) ((PdvMclEscl)data).getPeriod());
row.appendChild(group);
row.appendChild(pdv);
row.appendChild(period);
row.appendChild(dstart);
row.appendChild(dend);
imgdelete = new Image("/images/InfoShelfImages/delete.png");
imgdelete.addEventListener(Events.ON_CLICK, new EventListener() {
public void onEvent(Event event) {
// PdvMcl.remove(((PdvMclEscl)data));
lMod.remove(((PdvMclEscl)data));
}
});
row.appendChild(imgdelete);
} else {
Label group = new Label(((PdvMclEscl)data).getGroup());
Label pdv = new Label(((PdvMclEscl)data).getPdv());
Label period = new Label((String) ((PdvMclEscl)data).getPeriod());
row.appendChild(group);
row.appendChild(pdv);
row.appendChild(period);
row.appendChild(dstart);
row.appendChild(dend);
}
}
}
public void onClick$btn(Event e) throws InterruptedException{
Messagebox.show("Hi btn");
}
}