-
FEATURED COMPONENTS
First time here? Check out the FAQ!
When focus on the textbox, press enter focus textbox B ...
A->B->C->A
<window id="windowEnterTab" title="Enter next tab" border="normal" apply="de.forsthaus.webui.util.EnterTabCtrl"> <grid> <rows> <row> <label id="labela" value="Value A" tooltip="help" /> </row> <row> TextA <textbox id="textboxa" /> </row> <row> TextB <textbox id="textboxb" /> </row> <row> TextC <textbox id="textboxc" /> </row> </rows> </grid> </window>
Not that clear... do you mean that pressing tab index you hould iterate over the rows, in a circular way?
I believe he wants to jump from textbox to textbox by pressing the ENTER key.
I have put the codes inZksample2 :
zul: /WEB-INF/pages/test/enterTab.zul
java: de.forsthaus.webui.util.test.EnterTabCtrl.java
enterTab.zul
<?xml version="1.0" encoding="UTF-8"?> <?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" ?> <zk xmlns="http://www.zkoss.org/2005/zul" xmlns:h="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul/zul.xsd"> <window id="enterTabWindow" apply="de.forsthaus.webui.util.test.EnterTabCtrl" title="change textbox focus on ENTER" border="none" closable="true" mode="modal" width="500px" height="400px"> <grid> <rows> <row> <label id="labela" value="Value A" tooltip="help" ></label> </row> <row> TextA <textbox id="textboxa" forward="onOK=onOKTextbox" ></textbox> </row> <row> TextB <textbox id="textboxb" forward="onOK=onOKTextbox" ></textbox> </row> <row> TextC <textbox id="textboxc" forward="onOK=onOKTextbox" ></textbox> </row> </rows> </grid> </window> </zk>
EnterTabCtrl.java
package de.forsthaus.webui.util.test; import java.io.Serializable; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.ForwardEvent; import org.zkoss.zk.ui.util.GenericForwardComposer; import org.zkoss.zul.Textbox; /** * Controller for let the focus jump from textbox to textbox by press the ENTER * key. * * zul-file: WEB-INF/pages/test/enterTab.zul * @see http * ://www.zkoss.org/forum/listComment/20977-Enter-next-Tabindex-component * @author Stephan Gerth * */ public class EnterTabCtrl extends GenericForwardComposer implements Serializable { private static final long serialVersionUID = 1L; private Textbox textboxa; // autowired private Textbox textboxb; // autowired private Textbox textboxc; // autowired /** * Default constructor. */ public EnterTabCtrl() { } @Override public void doAfterCompose(Component window) throws Exception { super.doAfterCompose(window); } public void onOKTextbox(Event event) { if (((Textbox) ((ForwardEvent) event).getOrigin().getTarget()).getId().equalsIgnoreCase("textboxa")) { textboxb.focus(); } else if (((Textbox) ((ForwardEvent) event).getOrigin().getTarget()).getId().equalsIgnoreCase("textboxb")) { textboxc.focus(); } else if (((Textbox) ((ForwardEvent) event).getOrigin().getTarget()).getId().equalsIgnoreCase("textboxc")) { textboxa.focus(); } } }
best
Stephan
PS: There's a new button for starting such test samples (SamplesMainCtrl).
Nice summary of event mgmt and control implementation!
Asked: 2012-10-30 08:17:52 +0800
Seen: 153 times
Last updated: Oct 30 '12