是否可以在ZK的列表框中实现OnClick侦听器?单击某个项目时的触发器可以正常使用以下代码,但我无法访问所单击的项目(getSelectedItems()显示通过复选框或最顶层选定项目选择的项目,但我想通过以下方式触发与其无关的项目点击它)。这就是OnSelect监听器对我来说无关紧要的原因,必须直接选中复选框元素,而不是通过单击该项目自动选择复选框元素。
谢谢你的任何提示。
ZUL:
<row>
<listbox id="article_output" width="100%" height=""
multiple="true" checkmark="true" nonselectableTags="*">
<listhead>
<listheader label="Article"/>
</listhead>
</listbox>
</row>
创建模型和监听器
public void fillListBoxWithArticles(final Listbox lb, List<Article> articles) {
lb.setItemRenderer(new ArticleItemRenderer());
lb.setCheckmark(true);
lb.setMultiple(true);
ListModelList<Article> lml_articles = new ListModelList<Article>(articles);
lml_articles.setMultiple(true);
lb.setModel(lml_articles);
lb.addEventListener(Events.ON_CLICK, new EventListener() {
@Override
public void onEvent(Event event) throws Exception {
logger.debug("SELECTED INDEX: " + lb.getSelectedIndex());
setArticleToInfobox(articles.get(lb.getSelectedIndex()));
}});
lb.focus();
}
的ItemRenderer:
public class ArticleItemRenderer implements ListitemRenderer<Article> {
@Override
public void render(Listitem item, Article data, int index) throws Exception {
item.appendChild(new Listcell(data.getArticletitle())); }}