我正在我的手机中添加一个包含Google可视化图表的面板。
像这样 public class CustomCell extends AbstractCell<VerticalPanel> {
Panel panel;
@Override
public void render(com.google.gwt.cell.client.Cell.Context context,
VerticalPanel chartContainer, SafeHtmlBuilder sb) {
if ( chartContainer == null ) return;
GWTWidget myGwtWidget = new GWTWidget();
myGwtWidget.getPan().add(chartContainer);
sb.appendHtmlConstant(myGwtWidget.getElement().getString());
}
它显示我的verticalPanel有图表,但图表工具提示消失了,
然后我尝试了onBrowse,如下所示,但它迫使我删除@Override .. 和事情不起作用..
任何想法,我错了
@Override
public void onBrowserEvent(
Context context,
Element parent,
VerticalPanel value,
NativeEvent event,
ValueUpdater<VerticalPanel> valueUpdater) {
// Let AbstractCell handle the keydown event.
super.onBrowserEvent(context, parent, value, event, valueUpdater);
// Handle the click event.
if ("click".equals(event.getType())) {
// Ignore clicks that occur outside of the outermost element.
EventTarget eventTarget = event.getEventTarget();
if (parent.getFirstChildElement().isOrHasChild(Element.as(eventTarget))) {
Window.alert("ss");
}
}
}
这里我在我的celltable中添加图表..(这个custCell是上面的custCell类的实例)
Column<Contact, VerticalPanel> graphColumn = new Column<Contact, VerticalPanel>(custCell) {
@Override
public VerticalPanel getValue(Contact object) {
ColumnChart pie = new ColumnChart(createTable(object.getEnglish(), object.getMaths()), createOptions());
pie.addSelectHandler(createSelectHandler(pie));
VerticalPanel vpChart = new VerticalPanel();
vp.add(vpChart);
vpChart.add(pie);
vpChart.setWidth("300px");
return vpChart;
}
};
答案 0 :(得分:1)
当您致电.getElement().getString()
时,您将获得一个没有任何功能的纯HTML。
我不知道GWTWidget应该做什么,但是在你致电.getElement().getString()
后它不会这样做。