-
FEATURED COMPONENTS
First time here? Check out the FAQ!
well straight to the point.
i have a case, where i want to clear my textbox when i close the window..
this is my zul
<zk> <zscript> import org.zkoss.zk.ui.util.GenericForwardComposer; public class myController extends GenericForwardComposer { public void onClickAdmin(Event event) { String jqCommand = "jq(\"$winLoginAdmin\").fadeIn(2500)"; Clients.evalJavaScript(jqCommand); } public void onClose$winLoginAdmin(Event event){ if (event instanceof ForwardEvent){ event = ((ForwardEvent)event).getOrigin(); } event.stopPropagation(); //stop event to prevent window be detached txtUsername.setText(""); } } </zscript> <window border="normal" apply="myController"> <div> <toolbar> <button id="btnLoginAdmin" label="Login" forward="onClick=onClickAdmin()"/> </toolbar> </div> </window> <window title="Login" closable="true" id="winLoginAdmin" mode="overlapped" border="normal" position="center" style="display:none;" apply="myController"> <textbox id="txtUsername" /> </window> </zk>
but i've got an error
sometimes
java.lang.NullPointerException.
and sometimes
Attempt to resolve method: setText() on undefined variable or class name: txtUsername : at Line: 19 : in file: inline evaluation of: `` import org.zkoss.zk.ui.util.GenericForwardComposer; public class myCon . . . '' : txtUsername .setText ( "" ) Called from method: onClose$winLoginAdmin : at Line: -1 : in file: <Called from Java Code> : <Compiled Java Code>
but the null warning appears more often
what is really happen ?
thanks for any helps.
False order in your code. Correct to this:
public void onClose$winLoginAdmin(Event event){ if (event instanceof ForwardEvent){ event = ((ForwardEvent)event).getOrigin(); } txtUsername.setText(""); // un-comment this line if it does not work. txtUsername.invalidate(); event.stopPropagation(); //stop event to prevent window be detached }
Check this sample, you forgot to make it as a member field .
thanks for all of your replies..
first for TonyQ
your suggestions has solved this error
Attempt to resolve method: setText() on undefined variable or class name: txtUsername : at Line: 19 : in file: inline evaluation of: `` import org.zkoss.zk.ui.util.GenericForwardComposer; public class myCon . . . '' : txtUsername .setText ( "" ) Called from method: onClose$winLoginAdmin : at Line: -1 : in file: <Called from Java Code> : <Compiled Java Code>
but i still have the null issue..
and for Stephan,
i have change my code as your instruction
public void onClose$winLoginAdmin(Event event){ if (event instanceof ForwardEvent){ event = ((ForwardEvent)event).getOrigin(); } txtUsername.setText(""); txtUsername.invalidate(); event.stopPropagation(); //stop event to prevent window be detached }
but still got a Null issue,
i just wondering what is really happening in my code?
btw thank you very much for your kindly replies..
Hmmmm, i'm not working with zscript but i mean the order is not correct
<zk> <window title="Login" closable="true" id="winLoginAdmin" mode="overlapped" border="normal" position="center" style="display:none;" apply="myController"> <zscript> import org.zkoss.zk.ui.util.GenericForwardComposer; public class myController extends GenericForwardComposer { public void onClickAdmin(Event event) { String jqCommand = "jq(\"$winLoginAdmin\").fadeIn(2500)"; Clients.evalJavaScript(jqCommand); } public void onClose$winLoginAdmin(Event event){ if (event instanceof ForwardEvent){ event = ((ForwardEvent)event).getOrigin(); } event.stopPropagation(); //stop event to prevent window be detached txtUsername.setText(""); } } </zscript> <vbox> <textbox id="txtUsername" /> <div> <toolbar> <button id="btnLoginAdmin" label="Login" forward="onClick=onClickAdmin()"/> </toolbar> </div> </vbox> </window> </zk>
You will find a lot of login sample codes here in the forum.
Asked: 2011-06-23 04:44:11 +0800
Seen: 444 times
Last updated: Jun 24 '11