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 :
Dedalus Concerto CONC-5938
71guest188.114.102.11417kiilApr 23, 2024 1:10:17 PMlinkDedalus Concerto CONC-XXXX
70guest172.71.246.317kiilApr 23, 2024 10:43:35 AMlinkDedalus Concerto CONC-XXXX
69guest172.71.246.217kiilApr 23, 2024 10:42:44 AMlinkDedalus Concerto CONC-XXXX
68guest172.71.246.4917kiilApr 23, 2024 10:40:09 AMlinkScrapbook Concerto CONC-XXXX
67guest172.71.246.4817kiilApr 23, 2024 10:39:49 AMlinkScrapbook Concerto CONC-XXXX
66guest172.71.246.4917kiilApr 23, 2024 10:39:35 AMlinkScrapbook Concerto CONC-XXXX
65guest172.71.246.4917kiilApr 23, 2024 10:38:52 AMlinkScrapbook Concerto CONC-XXXX
64guest172.71.246.4917kiilApr 23, 2024 10:38:47 AMlinkScrapbook Concerto CONC-XXXX
63Giacomo Taormina172.71.114.2417kiilApr 23, 2024 10:19:11 AMlinkScrapbook Concerto CONC-XXXX
62Giacomo Taormina162.158.129.917kiilApr 23, 2024 10:11:02 AMlinkComboBox marcos
65guest208.51.187.190brbmflDec 7, 2017 5:43:21 PMlinkresources
index.zulzul<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" arg0="./pepe" ?>
<zk>
<window id="pepe" border="normal" title="hello" apply="pkg$.TestComposer">
<vbox>
Auto-complete Combobox:
<combobox xmlns:w="http://www.zkoss.org/2005/zk/client"
id="combo" autodrop="true" autocomplete="false"
model="@{pepe$TestComposer.listaUsuarios}"
w:onKeyPress="pepe('tecla pulsada')"
/>
<!--
<hbox>
<checkbox checked="true"
onCheck="combo.autodrop = self.checked"
label="auto drop popup when typing" />
<checkbox checked="true"
onCheck="combo.buttonVisible = self.checked" label="button visible" />
</hbox>
-->
</vbox>
</window>
<n:script xmlns:n="native">
var pepe = function(msg) {
alert(msg);
}
var a_global_variable;
function a_global_function () {
alert("native script");
}
alert("you can not access this as widget but evaluated immediately");
</n:script>
</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.*;
import org.zkoss.zkplus.databind.AnnotateDataBinder;
import java.util.*;
public class TestComposer extends GenericForwardComposer{
public Combobox combo;
private AnnotateDataBinder binder;
private List<String> listaUsuarios;
public List<String> getListaUsuarios() {
return listaUsuarios;
}
public List<String> obtenerListaUsuarios() {
String[] _dict = {
"abacus", "accuracy", "acuity", "adage", "afar", "after", "apple",
"bible", "bird", "bingle", "blog",
"cabane", "cape", "cease", "cedar",
"dacron", "defacto", "definable", "deluxe",
"each", "eager", "effect", "efficacy",
"far", "far from",
"girl", "gigantean", "giant",
"home", "honest", "huge",
"information", "inner",
"jump", "jungle", "jungle fever",
"kaka", "kale", "kame",
"lane", "lemma",
"master", "maxima", "music",
"nerve", "new", "number",
"omega", "opera",
"pea", "peace", "peaceful",
"rock", "RIA",
"sound", "spread", "student", "super",
"tea", "teacher",
"unit", "universe",
"vector", "victory",
"wake", "wee", "weak", "web2.0",
"xeme",
"yea", "yellow",
"zebra", "zk",
};
return new ArrayList<String>(Arrays.asList(_dict));//new SimpleListModel(_dict);
}
public void doAfterCompose(Component comp) throws Exception {
super.doAfterCompose(comp);
//combo.setModel(obtenerDatos());
listaUsuarios = obtenerListaUsuarios();
this.binder = new AnnotateDataBinder(comp);
}
public void onClick$btn(Event e) throws InterruptedException{
Messagebox.show("Hi btn");
}
// public void onChanging$combo(InputEvent event) throws InterruptedException{
public void onChange(InputEvent event) throws InterruptedException{
String usuario = (String) event.getValue();
Messagebox.show("-> "+usuario);
if (isNotBlank(usuario) && usuario.trim().length() > 3){
listaUsuarios = obtenerListaUsuarios();
try {
Thread.sleep(100);
}
catch (Exception e) {
};
listaUsuarios.add("lamella 0");
listaUsuarios.add("lamella 1");
listaUsuarios.add("lamella 2");
listaUsuarios.add("lamella 3");
listaUsuarios.add("Sabrina Juliana 1");
listaUsuarios.add("Maria julia 2");
listaUsuarios.add("Horacio julian 3");
listaUsuarios.add("xx Julia 4");
}
binder.loadComponent(combo);
}
public boolean isNotBlank(String valor) {
return (valor!=null && !valor.isEmpty());
}
}