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
1guest181.143.52.21elq4s4Jan 15, 2015 3:43:29 PMlinkresources
index.zulzul<?page id="pagCnxRpt" title="Conexión para reportes" contentType="text/html;charset=UTF-8"?>
<zk>
<?variable-resolver class="org.zkoss.zkplus.spring.DelegatingVariableResolver"?>
<window id="winReporteRpt" title="Wizard creación / edición reportes" border="normal" width="350px" sizable="true" closable="false" position="center" mode="modal">
<separator />
<div id="contenedorGeneral">
<!-- Datos generales -->
<div id="contenedor" width="98%" height="80%" style="margin:2%">
<div id="form1">
<vbox align="center" width="100%">
<!-- Nombre -->
<hbox width="320px" align="start" pack="start">
<label value="*" style="color:red" />
<label id="lblNombre" value="lblNombre" />
</hbox>
<hbox width="320px" align="start" pack="start">
<textbox id="txtNombre" width="310px" />
</hbox>
<!-- Descripción -->
<hbox width="320px" align="start" pack="start">
<label id="lblDescripcion" value="lblDescripcion" />
</hbox>
<hbox width="320px" align="start" pack="start">
<textbox id="txtDescripcion" width="310px" rows="6" />
</hbox>
<!-- Conexión -->
<hbox width="320px" align="start" pack="start">
<label value="*" style="color:red" />
<label id="lblConexion" value="lblConexion" />
</hbox>
<hbox width="320px" align="start" pack="start">
<combobox id="cmbConexion" width="310px" readonly="true" />
</hbox>
</vbox>
</div>
<!-- Campo para ingreso del sql -->
<div id="form2" visible="false" height="90%" width="100%" style="margin:0px; padding:0px;" >
<div style="margin-top:-35px;" height="400px" >
<label value="*" style="color:red" />
<label id="lblSQL" value="lblSQL" />
<separator/>
<textbox id="txtSQL" />
</div>
</div>
<!-- Formluario para ingreso de formato de parametros -->
<div id="form4" visible="false" height="90%" width="100%">
<vbox width="100%" align="left">
<groupbox width="650px" closable="false">
<caption id="ctnParametro"
label="Registro de Parametros" />
<grid width="100%" id="gdClave" height="250px"
style="background:none repeat scroll 0 0 #C7DCD0; overflow:hidden; border:none;">
<columns>
<column id="lblParametros"></column>
<column id="lblTipo"></column>
<column id="lblFormato"></column>
</columns>
<rows id="rowFilas">
</rows>
</grid>
</groupbox>
</vbox>
</div>
<!-- Ejecución programada -->
<div id="form3" visible="false" >
<vbox width="100%">
<hbox visible="false">
<label value="El explain muestra una complejidad de " />
<label id="lblExplainValue" value="33" />
</hbox>
<hbox>
<checkbox id="chbEjecucionPeriodica" />
</hbox>
<div style="border:2; border-color: black">
<label id="lblElecucionPeriodica" value="Ejecución periódica"></label>
<vbox>
<label value="Minutos de la hora" />
<hbox >
<combobox id="cmbOpciones1" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnBack1" ></button>
<button disabled="false" id="btnFront1"></button>
<textbox id="txbValores1" disabled="true" />
</hbox>
<label id="lblHorasDia" value="Horas del día" />
<hbox>
<combobox id="cmbOpciones2" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnBack2" ></button>
<button disabled="false" id="btnFront2" ></button>
<textbox id="txbValores2" disabled="true" />
</hbox>
<label id="lblDiasMes" value="Días del mes" />
<hbox>
<combobox id="cmbOpciones3" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnBack3" ></button>
<button disabled="false" id="btnFront3"></button>
<textbox id="txbValores3" disabled="true" />
</hbox>
<label id="lblMesesAnio" value="Meses del año" />
<hbox>
<combobox id="cmbOpciones4" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnBack4" ></button>
<button disabled="false" id="btnFront4" ></button>
<textbox id="txbValores4" disabled="true" />
</hbox>
<label id="lblDiasSemana" value="Días de la semana" />
<hbox>
<combobox id="cmbOpciones5" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnBack5" />
<button disabled="false" id="btnFront5" />
<textbox id="txbValores5" disabled="true" />
</hbox>
<checkbox id="chbEnviarEmail" label="¿Desea enviar por Email?" />
<hbox width="33%">
<grid>
<rows>
<row>
<toolbarbutton id="btnPlantillas"/>
<label id="lblNombrePlantilla" style="color:black;border:7"/>
<toolbarbutton id="btnSeleccionarUsuarios"/>
</row>
<row>
<checkbox id="chbExcel" label="Excel"></checkbox>
<checkbox id="chbPdf" label="Pdf"></checkbox>
<checkbox id="chbTxt" label="Txt"></checkbox>
</row>
</rows>
</grid>
</hbox>
</vbox>
</div>
<div style="border:2; border-color: black">
<label id="lblConfiguracionGenereal" value="Configuración general"></label>
<vbox>
<hbox>
<checkbox id="chbAlmacenarResultados" />
</hbox>
<hbox>
<checkbox id="chbConcatenarRegistros" style="padding-left:30px" visible="false" />
</hbox>
<hbox>
<label id="lblFormateoReporte" />
<combobox readonly="true" id="chbFormateoReporte" width="220px"></combobox>
<fileupload id="btnUploadJasper" label="Subir" visible="false" />
</hbox>
<hbox>
<checkbox id="chbImagenesReporteJasper" />
</hbox>
<separator id="separator" visible="false"></separator>
<!-- Grilla para la carga de imagnes del reporte -->
<div id="grillaImagenes" height="400px" visible="false">
<hbox>
<button>
</button>
<button>
</button>
</hbox>
</div>
</vbox>
</div>
</vbox>
</div>
<!-- Ejecución programada -->
<div id="form5" visible="false">
<vbox width="100%">
<hbox>
<vbox width="220px">
<label id="lblNombreUmbral"></label>
<textbox id="txtNombreUmbral" width="200px"></textbox>
</vbox>
<vbox width="250px">
<label id="lblCampoUmbral"></label>
<combobox id="cmbCampoUmbral" width="200px"></combobox>
</vbox>
</hbox>
<hbox>
<vbox width="220px">
<label id="lblFechaUmbral"></label>
<combobox id="cmbFechaUmbral" width="200px"></combobox>
</vbox>
<vbox width="200px">
<label id="lblFechaActualizacionUmbral"></label>
<combobox id="cmbFechaActualizacionUmbral" width="200px"></combobox>
</vbox>
</hbox>
<hbox>
<vbox width="220px">
<label id="lblValorMinimoUmbral"></label>
<decimalbox id="dbxValorMinimoUmbral"></decimalbox>
</vbox>
<vbox>
<label id="lblValorMaximoUmbral"></label>
<decimalbox id="dbxValorMaximoUmbral"></decimalbox>
</vbox>
</hbox>
<div style="border:2; border-color: black">
<vbox>
<label value="Minutos de la hora" />
<hbox >
<combobox id="cmbUmbrales1" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnUBack1" ></button>
<button disabled="false" id="btnUFront1"></button>
<textbox id="txbUmbralValores1" disabled="true" />
</hbox>
<label id="lblHorasDia2" />
<hbox>
<combobox id="cmbUmbrales2" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnUBack2" ></button>
<button disabled="false" id="btnUFront2" ></button>
<textbox id="txbUmbralValores2" disabled="true" />
</hbox>
<label id="lblDiasMes2" />
<hbox>
<combobox id="cmbUmbrales3" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnUBack3" ></button>
<button disabled="false" id="btnUFront3"></button>
<textbox id="txbUmbralValores3" disabled="true" />
</hbox>
<label id="lblMesesAnio2" />
<hbox>
<combobox id="cmbUmbrales4" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnUBack4" ></button>
<button disabled="false" id="btnUFront4" ></button>
<textbox id="txbUmbralValores4" disabled="true" />
</hbox>
<label id="lblDiasSemana2" />
<hbox>
<combobox id="cmbUmbrales5" disabled="false" onAfterRender="if(self.getItems().size() > 0) {self.setSelectedIndex(0);}" />
<button disabled="false" id="btnUBack5" />
<button disabled="false" id="btnUFront5" />
<textbox id="txbUmbralValores5" disabled="true" />
<toolbarbutton id="btnAgregar" image="/fw/img/tool/20x20/aprobar.png"></toolbarbutton>
</hbox>
<listbox width="580px" height="70px" id="lsxUmbrales">
<listhead>
<listheader label="Nombre"></listheader>
<listheader label="Campo"></listheader>
<listheader label="Fecha"></listheader>
<listheader label="Fecha actualización"></listheader>
<listheader label="Valor minimo"></listheader>
<listheader label="Valor maximo"></listheader>
<listheader width="30px"></listheader>
</listhead>
</listbox>
</vbox>
</div>
</vbox>
</div>
<separator></separator>
<div id="botonera" align="center-end" width="95%" height="15%" style="margin-bottom:3px">
<hbox>
<button id="btnAnterior" label="Anterior" visible="false" />
<button id="btnSiguiente" label="Siguiente" />
<button id="btnCancelar" label="Cancelar" />
</hbox>
</div>
</div>
<!-- <div id="botonera" align="center" width="95%" height="15%" style="margin-bottom:3px"> -->
<!-- <hbox> -->
<!-- <button id="btnAnterior" label="Anterior" visible="false" /> -->
<!-- <button id="btnSiguiente" label="Siguiente" /> -->
<!-- <button id="btnCancelar" label="Cancelar" /> -->
<!-- </hbox> -->
<!-- </div> -->
</div>
</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.*;
public class TestComposer extends GenericForwardComposer{
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
}
public void onClick$btn(Event e) throws InterruptedException{
Messagebox.show("Hi btn");
}
}