Tabbox Renderer

From Documentation
Revision as of 07:34, 8 July 2022 by Hawk (talk | contribs) ((via JWB))
  • Available for ZK:
  • http://www.zkoss.org/product/zkhttp://www.zkoss.org/whyzk/zkeeVersion ee.png

Since 7.0.0 Here we describe how to implement a custom renderer for a tabbox (TabboxRenderer). For the concepts about component, model and renderer, please refer to the Model-driven Display section.

When a tabbox (Tabbox) is assigned with a model, a default renderer is assigned too. The default renderer will assume that each tab has only one tabpanel, and it converts the data into a string directly[1]. If you want to display a rich tabpanel or retrieve a particular field of the data, you have to implement TabboxRenderer to handle the rendering.

For example,

public class MyRenderer implements TabboxRenderer{
	public void renderTab(Tab tab, Object data, int index) {
		tab.setLabel("New -- " + data);
	}
	public void renderTabpanel(Tabpanel tabpanel, Object data, int index) {
		tabpanel.appendChild(new Label("New -- " + data));
	}
}

  1. If the tabbox is assigned a template called model:tab and model:tabpanel, then the template will be used to render the tabbox. For more information, please refer to the Tabbox Template section.

Version History

Version Date Content
7.0.0 November 2013 Tabbox support ListModel



Last Update : 2022/07/08

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.