http://tsinglongwu.iteye.com/category/131795
1. zul页面读取国际化资源:
1) 准备资源:i3-label.properties(如果为制定默认该文件)、i3-label_zh_CN.properties(其中i3-label为固定格式),放在WEB-INF目录下;
2) 在zul页面头部添加如下代码
- <?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" ?>
<?taglib uri="http://www.zkoss.org/dsp/web/core" prefix="c" ?>
3) 使用:
- <label value="${c:l('label.system.name')}"/>
<label value="${c:l('label.system.name')}"/>
2. Java读取国际化资源:
- import org.zkoss.util.resource.Labels;
- String str = Labels.getLabel(key);
import org.zkoss.util.resource.Labels; String str = Labels.getLabel(key);
在页面中通过按钮切换语言:
- Locale locale=Locales.getLocale((String)language.getSelectedItem().getValue()); //假如(String)language.getSelectedItem().getValue()为‘zh_CN’
- session.setAttribute("px_preferred_locale", locale);
- execution.sendRedirect(execution.getContextPath()+ "/login.zul");
Locale locale=Locales.getLocale((String)language.getSelectedItem().getValue()); //假如(String)language.getSelectedItem().getValue()为‘zh_CN’ session.setAttribute("px_preferred_locale", locale); execution.sendRedirect(execution.getContextPath()+ "/login.zul");
3. 获取zul页面组件:
- //zul:
- <window id="win">
- <Listbox id="lb"/>
- </window>
- //java:
- Component component= Path.getComponent("/win/lb");
//zul: <window id="win"> <Listbox id="lb"/> </window> //java: Component component= Path.getComponent("/win/lb");
4. 数据绑定管理器重复绑定的异常处理:
在执行代码:
- Executions.createComponents(newZulUri, parentWin, null);
Executions.createComponents(newZulUri, parentWin, null);
时,parentWin所在zul页面使用了数据绑定功能(当前页没有):
- <?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" ?>
执行时出现异常:
"org.zkoss.zk.ui.UiException: Page is already covered by another Data Binder. Cannot be covered by this Data Binder again."
----解决:这是由于数据绑定管理器没有指定目标组件,如果有多个parentWin页面同时使用数据绑定管理器的话将会出现重复绑定的情况(具体原因还没搞清,欢迎高手指点:)。因此可以为每个使用数据绑定的页面添加绑定目标:
- <?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" root="./win"?>
- <window id="win">
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit" root="./win"?> <window id="win">
5. 如何让Messagebox.show()事件生效:
在WEB-INF/zk.xml中有以下配置:
- <system-config>
- <disable-event-thread>true|false</disable-event-thread>
- </system-config>
<system-config> <disable-event-thread>true|false</disable-event-thread> </system-config>
[Default: true (disabled) for ZK 5 ad later; false (enabled) for ZK 2.x and 3x]
For better performance (and better compatible with other frameworks), it is recommended to disable the use of the event processing thread. For more information, please refer to ZK Developer's Reference.
Enable the event thread only if the project does not need to integrate other frameworks (such as Spring), uses Messagebox and modal windows a lot, and does not have a lot of concurrent users.
如果设置为true,则Messagebox.show()需要添加事件监听器参数,如:
- Messagebox.show("Remove record?", "Question", Messagebox.OK
- | Messagebox.CANCEL, Messagebox.QUESTION,
- new EventListener() {
- @Override
- publicvoid onEvent(Event event) throws Exception {
- if (((Integer) event.getData()).intValue() == Messagebox.OK) {
- System.out.println("Messagebox.OK selected!");
- return;
- } else {
- System.out
- .println("Messagebox.CANCEL selected!");
- return;
- }
- }
- });
Messagebox.show("Remove record?", "Question", Messagebox.OK | Messagebox.CANCEL, Messagebox.QUESTION, new EventListener() { @Override public void onEvent(Event event) throws Exception { if (((Integer) event.getData()).intValue() == Messagebox.OK) { System.out.println("Messagebox.OK selected!"); return; } else { System.out .println("Messagebox.CANCEL selected!"); return; } } });
6. 给弹出窗口设置参数:
例如:
- Map<String, String> arg = new HashMap<String, String>();
- arg.put("hostGroupId", hostGroupId);
- arg.put("hostGroupType", hostGroupType);
- Window wnd = (Window) Executions.createComponents("/pages/hostMan/hostAdd.zul", null, arg);
- wnd.doModal();
Map<String, String> arg = new HashMap<String, String>(); arg.put("hostGroupId", hostGroupId); arg.put("hostGroupType", hostGroupType); Window wnd = (Window) Executions.createComponents("/pages/hostMan/hostAdd.zul", null, arg); wnd.doModal();
取值方式1:窗口弹出后读取参数需要写在渲染方法public void afterCompose() {}中,如:
- hostGroupId = (String) Executions.getCurrent().getArg().get("hostGroupId");
hostGroupId = (String) Executions.getCurrent().getArg().get("hostGroupId");
取值方式2:
- Window viewWin = (Window) Executions.createComponents(
- "pages/reportView.zul", IndexWin.this, argMap);
Window viewWin = (Window) Executions.createComponents( "pages/reportView.zul", IndexWin.this, argMap);
java类中:
- Map argMap = this.getDesktop().getExecution().getArg();
Map argMap = this.getDesktop().getExecution().getArg();
7. 其它技术点:
2,zk中添加网站头像(即favicon.ico)
3,borderlayout布局组件的使用
4,自定义宏的使用
5,tree组件的使用
6,grid的使用,以及偶数行着色显示
7,forward属性的使用
8,基于注解的数据绑定
1)org.zkoss.zkplus.databind.AnnotateDataBinderInit类的使用
2)zk注解中类型转换器的使用(TypeConverter)
3)注解中设置别名
4)调用service,异步更新视图
相关推荐
然后,您可以向他人证明您拥有这些凭据,而无需透露您的全部个人信息。 例如,假设您拥有包含出生日期的签名凭证,则可以向某人证明您已年满18岁,而不必透露您的姓名,地址或年龄。 该技术使用零知识证明,这是学术...
【标题】"The-Bot-Of-ZK" 指的可能是一个基于Python编写的自动化脚本或机器人程序,专门用于与ZK相关的任务。ZK在这里可能是Zookeeper的缩写,Zookeeper是一个分布式协调服务,广泛应用于分布式系统中,如大数据、...
- **4Y03Y-FTLE1-EZNH0-MAAQ2-1244UMV4YN-0L38Q-2ZK60-XUA7K-AAZ18** - **JC6AP-D4H0P-TZ131-4A2QM-8CNP7** - **0U6UU-6AJDL-RZTK9-230Q0-8ARJQ** - **JG2TD-DJL95-FZZZ8-DU1NH-33GH7** 这些注册号都是由字母和数字...
1. 总则 1.1 本细则适用于亭子口水利枢纽电站厂房土建与金属结构安装工程的监理文档管理工作,涵盖整个工程建立监理的全过程。 1.2 实施细则基于监理合同书(合同编:CDT-TZK/S-002)的“监理职责”和“监理归档范围...
- MV4YN-0L38Q-2ZK60-XUA7K-AAZ18JC6AP-D4H0P-TZ131-4A2QM-8CNP70U6UU-6AJDL-RZTK9-230Q0-8ARJQ - UV3NK-25Y41-081CZ-0YP7C-PQ89A **序列号格式**:序列号通常由字母和数字组成,按照一定的规律排列。例如,上面给...
- **辅助柜开关操作**:依次闭合辅助柜中的刀开关(1K)、空气开关(ZK1、ZK2、ZK3),并将开关(4K)拨至“通”的位置。 - **调节柜操作**:按下调节柜中的相复位开关。 - **操纵台按钮操作**:在右操纵台上,先按...
这样,只有拥有者(即用户`zk`)才能读写`.ssh/`目录,而其他用户只能读取`authorized_keys`文件。 最后,虽然SSH免密登录简化了操作,但也可能带来安全隐患。如果别人获取了你的私钥,他们就可能无密码访问你的...
4. **版权问题**: 使用他人制作的音乐前,应确保获得了相应的授权或许可。 ### 四、总结 综上所述,网页音乐播放器是一种能够提升用户体验的功能。通过合理的代码编写和技术选型,可以在不牺牲性能和兼容性的前提下...
根据提供的部分内容,“下载地址:https://pan.baidu.com/s/1Z4KehQbEWq4jchc90zK_zA 提取码:frkp”表明可以通过百度网盘获取上述系统源码。但需要注意的是,在使用这些源码之前,应当遵循相关法律法规,确保其合法...
2020年04月12日更新:承蒙各位的厚爱,...目前已经有了四个笔记,还在努力更新中~我写在这里的原因,一方面是希望帮助到一些朋友,另一方面也是勉励自己,毕竟不为收入,只为做些对自己、对他人有意义的事情。所以还是
请注意,教材必须由考生本人亲自领取,如果需要他人代领,除了上述证件外,代领人还需要携带自己的身份证。 2. **新生摄像**:这是新生获取准考证的重要环节。摄像将在12月25—28日在金寨路322号市考办进行。根据准...
有关信息的信息,请与他人联系。 不适用,不适用,不适用。 Každáskupinamásvoustránkusaktuálníminotifyacemi podsprávoutrenérů。 暂不显示最新消息 霍托沃 hlavnístránkajižnestahuje 70 MB数据 ...