In this example, we will see how we can see more details when the user moves in the ListItem Listbox.
ZK Version : ZK 6
Project Name : ListItemMVCShowMoreDetailsOnSelect
Project Structure :
ListItemOnSelectSoSomeThing.zul
users.java
ListItemOnSelectSoSomeThingCtrl.java
Output
ZK Version : ZK 6
Project Name : ListItemMVCShowMoreDetailsOnSelect
Project Structure :
ListItemOnSelectSoSomeThing.zul
<?xml version="1.0" encoding="UTF-8"?> <?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?> <zk> <style> .z-listcell.red .z-listcell-cnt, .z-label.red{ color:red; } </style> <window id='myWin' title="MVC example" border="normal" apply="mydomainUI.ListItemOnSelectSoSomeThingCtrl "> Example For showing more details about the row when the user moves <listbox id="listUsers" model="@{myWin$ListItemOnSelectSoSomeThingCtrl.users}" selectedItem="@{myWin$ListItemOnSelectSoSomeThingCtrl.selected}"> <listhead sizable="true"> <listheader label="User Code" width="100px" /> <listheader label="User Name" width="285px" /> <listheader label="User Password" width="285px" /> <listheader label="Active" width="285px" /> </listhead> <listitem self="@{each=p1}"> <listcell label="@{p1.userCode}" /> <listcell label="@{p1.userName}" /> <listcell label="@{p1.userPassword}" /> <listcell label="@{p1.active}" /> </listitem> </listbox> <groupbox id="details" mold="3d" width="100%"> <caption label="User Details" /> First Name: <textbox id="fname" value="@{myWin$ListItemOnSelectSoSomeThingCtrl.selected.firstName}" readonly="true" /> Last Name: <textbox id="lname" value="@{myWin$ListItemOnSelectSoSomeThingCtrl.selected.lastName}" readonly="true" /> Home Phone : <doublebox id="homePhone" value="@{myWin$ListItemOnSelectSoSomeThingCtrl.selected.homePhone}" readonly="true" /> Mobile Phone : <doublebox id="mobilePhone" value="@{myWin$ListItemOnSelectSoSomeThingCtrl.selected.mobilePhone}" readonly="true" /> </groupbox> </window> </zk>
package mydomain; public class users { private String userCode; private String userName; private String userPassword; private String active; private String firstName; private String lastName; private String homePhone; private String mobilePhone; public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } public String getHomePhone() { return homePhone; } public void setHomePhone(String homePhone) { this.homePhone = homePhone; } public String getMobilePhone() { return mobilePhone; } public void setMobilePhone(String mobilePhone) { this.mobilePhone = mobilePhone; } public String getUserCode() { return userCode; } public void setUserCode(String userCode) { this.userCode = userCode; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserPassword() { return userPassword; } public void setUserPassword(String userPassword) { this.userPassword = userPassword; } public String getActive() { return active; } public void setActive(String active) { this.active = active; } }
ListItemOnSelectSoSomeThingCtrl.java
package mydomainUI; import java.util.ArrayList; import java.util.List; import mydomain.users; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.util.GenericForwardComposer; @SuppressWarnings({ "rawtypes", "serial" }) public class ListItemOnSelectSoSomeThingCtrl extends GenericForwardComposer { private List<users> usersAll = new ArrayList<users>(); private users curSelectedUser; public users getSelected() { return curSelectedUser; } public void setSelected(users sel) { curSelectedUser = sel; } @SuppressWarnings("unchecked") public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp); users u1 = new users(); u1.setUserName("John"); u1.setUserCode("User101"); u1.setUserPassword("xxxxx"); u1.setFirstName("JohnFirstName"); u1.setLastName("JohnLastName"); u1.setHomePhone("1111111111"); u1.setMobilePhone("222222"); u1.setActive("Y"); usersAll.add(u1); u1 = new users(); u1.setUserName("Robert"); u1.setUserCode("User102"); u1.setUserPassword("xxxxx"); u1.setActive("Y"); u1.setFirstName("RobertFirstName"); u1.setLastName("RobertLastName"); u1.setHomePhone("53534343"); u1.setMobilePhone("4534343"); usersAll.add(u1); u1 = new users(); u1.setUserName("Sean"); u1.setUserCode("User103"); u1.setUserPassword("xxxxx"); u1.setActive("N"); u1.setFirstName("SeanFirstName"); u1.setLastName("SeanLastName"); u1.setHomePhone("643434343"); u1.setMobilePhone("64343445434"); usersAll.add(u1); u1 = new users(); u1.setUserName("Marry"); u1.setUserCode("User104"); u1.setUserPassword("xxxxx"); u1.setActive("N"); u1.setFirstName("MarryFirstName"); u1.setLastName("MarryLastName"); u1.setHomePhone("8644344"); u1.setMobilePhone("44333"); usersAll.add(u1); curSelectedUser = new users(); } public List<users> getUsers() { return usersAll; } }
Output