父窗口代码:

前台(test.zul)

<?page title="" contentType="text/html;charset=UTF-8"?>
<zk xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.zkoss.org/2005/zul"
xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul">
<window id="testWin" border="none" apply="test.test19">
<button id="testBtn" label="测试"/>
  <label id="testLabel" value="ats了解,他不" />
</window>
</zk>

后台(test19.java)

package test;

import java.util.HashMap;
import java.util.Map; import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.Events;
import org.zkoss.zk.ui.event.ForwardEvent;
import org.zkoss.zk.ui.util.GenericAutowireComposer;
import org.zkoss.zul.Button;
import org.zkoss.zul.Window; public class test19 extends GenericAutowireComposer<Component>{ private static final long serialVersionUID = 1L; private Button testBtn; @Override
public void doAfterCompose(Component comp) throws Exception {
// TODO Auto-generated method stub super.doAfterCompose(comp);
testBtn.addEventListener(Events.ON_CLICK, new EventListener<Event>() { @Override
public void onEvent(Event event) throws Exception {
// TODO Auto-generated method stub Map<String, String> map = new HashMap<String, String>();
map.put("messageItem", "斩.赤红之瞳");
         //map.put("testLabel",testLabel);//将控件传给子窗口进行控制
String url = "Exit.zul";
Window window = (Window)Executions.createComponents(url, null, map);
window.doModal();
window.addForward("onRefresh", self, "onKjhen");//1、3参数命名必须以on开关且第三个字母必须大写--见附图 }
});
} public void onKjhen(ForwardEvent event){
alert(event.getOrigin().getData().toString());
} }

附图:

子窗口代码:

前台(Exit.zul)

<?page title="" contentType="text/html;charset=UTF-8"?>
<zk xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.zkoss.org/2005/zul"
xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul">
<window id="exitWD" title="消息提示框" border="normal" position="center,center"
action="show: slideDown;hide: slideUp" width="450px" closable="true"
apply="test.Exit">
<div align="center">
<label id="testLb"/>
</div>
<button id="testBtn" label="按扭"/>
</window>
</zk>

后台(Exit.java)

package test;

import java.util.Map;

import org.zkoss.zk.ui.Component;
import org.zkoss.zk.ui.Executions;
import org.zkoss.zk.ui.Path;
import org.zkoss.zk.ui.event.Event;
import org.zkoss.zk.ui.event.EventListener;
import org.zkoss.zk.ui.event.Events;
import org.zkoss.zk.ui.util.GenericForwardComposer;
import org.zkoss.zul.Button;
import org.zkoss.zul.Label;
import org.zkoss.zul.Window; public class Exit extends GenericForwardComposer<Component>{ private static final long serialVersionUID = 1L; Map<?, ?> map;
private Label testLb;
private Button testBtn;
Window exitWD; @Override
public void doAfterCompose(Component comp) throws Exception { super.doAfterCompose(comp);
//获取父页面的控件
Label testbox = (Label) Path.getComponent("/testWin/testLabel");//格式父窗口id+父窗口子控件id
System.out.println(testbox.getValue()); map = Executions.getCurrent().getArg();
if (map.containsKey("messageItem")){
testLb.setValue((String)map.get("messageItem"));
}
else {
testLb.setValue("——————————————");
} testBtn.addEventListener(Events.ON_CLICK, new EventListener<Event>() { @Override
public void onEvent(Event event) throws Exception {
String abc = "testPass";
Events.postEvent("onRefresh", self, abc);
exitWD.detach();
}
});
}
}

ZK 父窗口与子窗口消息交互的更多相关文章

  1. windows窗口分析,父窗口,子窗口,所有者窗口

    (本文尝试通过一些简单的实验,来分析Windows的窗口机制,并对微软的设计理由进行一定的猜测,需要读者具备C++.Windows编程及MFC经验,还得有一定动手能力.文中可能出现一些术语不统一的现象 ...

  2. HTML中IFrame父窗口与子窗口相互操作

    一.Iframe篇 //&&&&&&&&&&&&&&&&&&am ...

  3. JavaScript(Iframe、window.open、window.showModalDialog)父窗口与子窗口之间的操作

    一.Iframe 篇 公共部分 //父对象得到子窗口的值 //ObjectID是窗口标识,ContentID是元素ID function GetValue(ObjectID,ContentID) { ...

  4. js window.open() 父窗口与子窗口的互相调用(未必有用)

    javascript 父窗口与子窗口的互相调用 <html> <head></head> <body> 主要实现父子关系的页面 window.opene ...

  5. 总结JavaScript(Iframe、window.open、window.showModalDialog)父窗口与子窗口之间的操作

    一.Iframe 篇 //&&&&&&&&&&&&&&&&&&a ...

  6. #js window.open() 父窗口与子窗口的互相调用【转】

    未完整版 javascript 父窗口与子窗口的互相调用 a.html 父页面 <HTML> <HEAD> <meta http-equiv="content- ...

  7. iframe父窗口和子窗口之间的调用

    1>父窗口获取子窗口 js方法 document.getElementById('if1').contentWindow.document: window.frames["if1&qu ...

  8. 总结js(Iframe、window.open、window.showModalDialog)父窗口与子窗口之间的操作

    http://hi.baidu.com/yashua839/blog/item/131fdb2fe547ef221f3089af.html一.Iframe 篇 //&&&&am ...

  9. iframe父窗口和子窗口的调用方法

    iframe 父窗口和子窗口的调用方法父窗口调用子窗口 iframe_name.iframe_document_object.object_attribute = attribute_value 例子 ...

  10. windows 编程 —— 子窗口 与 子窗口控件

    目录: 子窗口与主窗口的交互 子窗口控件 按钮类别 button 滚动条类别 scrollbar 静态类别  static 编辑框类别 edit 清单方块 listbox 子窗口与主窗口的交互 创建窗 ...

随机推荐

  1. Fragment 操作原理

      fragment 本质 fragment 本质上是 view 的容器和控制器,fragment 是 activity 的碎片. activity 是什么呢?activity 是四大组件之一,因为 ...

  2. sudo -u hdfs hdfs balancer出现异常 No lease on /system/balancer.id

    16/06/02 20:34:05 INFO balancer.Balancer: namenodes = [hdfs://dlhtHadoop101:8022, hdfs://dlhtHadoop1 ...

  3. Centos系统上安装VNC view

    一.安装 VNC 默认情况下,CentOS 6.4 是没有安装的,检查是否安装,输入: [root@localhost ~]# rpm -q vnc vnc-server package vnc is ...

  4. Visual Studio vs软件下载 vax Visual Assist X VAssistX

    Visual_Studio_2008_Team_Suite简体中文正式版及补丁下载链接:http://pan.baidu.com/s/1jGvOotg 密码:y6ic Visual Studio 20 ...

  5. nodejs随记02

    Basic认证 检查报文头中Authorization字段,由认证方式和加密值构成: basic认证中,加密值为username:password,然后进行Base64编码构成; 获取username ...

  6. css -- 元素消失

    元素从屏幕消失的方法: A:display:none B:opacity C:visibility D:text-intent:-10000em; E:margin可远可远了 F:position:a ...

  7. TeeChart Pro 5.0

    这是Delphi7自带例子 C:\Program Files\Borland\Delphi7\Demos\TeeChart 以下为翻译的文字,有部分不准确. TeeChart Pro 5.0是一个库 ...

  8. wpf,ListBox,ScrollViewer内容向左向右偏移指定位置

    public partial class Example : UserControl { private ScrollViewer myScrollViewer; public Example() { ...

  9. Temp文件夹缺少network service权限,webservice能访问,但是不能调用

    给C:\WINDOWS\temp文件夹添加NETWORK SERVICE权限即可

  10. iOS Debug日志 viewhierarchy调试笔记

    Debut - View Debugging - Capture View Hierarchy 当视图没有正常显示时,用view hierarchy进行调试,查看左边的分支里有没有加载对应的视图. 如 ...