我有一个jmesa表,我想在运行时显示html.toolbar.texts而不是工具栏上的图标/图像。
我想只对导航图标/图像这样做。
有谁知道怎么做?
答案 0 :(得分:0)
我需要创建一个自定义导出“按钮”,所以我使用了TextItem。 这是代码:
TextItem tItem = new TextItem();
tItem.setText("<div>" +
getMessageSourceAccessor().getMessage("pb.export.selected") + "</div>");
ToolbarItemRenderer renderer = new CustomItemRenderer(tItem, getCoreContext(), "selected");
renderer.setOnInvokeAction("onInvokeAction");
tItem.setToolbarItemRenderer(renderer);
addToolbarItem(tItem);
这是自定义渲染器:
public class CustomItemRenderer extends AbstractItemRenderer {
private String type;
public CustomItemRenderer(ToolbarItem item, CoreContext coreContext, String type) {
setToolbarItem(item);
setCoreContext(coreContext);
this.type = type;
}
@Override
public String render() {
ToolbarItem item = getToolbarItem();
String action = "javascript:jQuery.jmesa.setExportToLimit('promotions','pdf');onInvokeExportAction('promotions'," + type + ");";
item.setAction(action);
return item.enabled();
}
}
这一切都在我的自定义工具栏实现中完成。可能有一种更简单的方法,但这对我有用。