下面是事实:我做了一个微小的应用程序,它包括相关的条形图表(一BIRT一个......当然),当我修改我的表中的值是automaticaly改变我的图表(如Excel但不花哨)...

反正一切正常......但是当我想让我的图表互动,以显示工具提示(例如)我告诉我的天然化     IDeviceRenderer 白衣以下命令     idr.setProperty(IDeviceRenderer.UPDATE_NOTIFIER,本); 但这样做时带来(很久以后)我的代码来一个错误     gr.render(IDR,gr.build(idr.getDisplayServer(),this.chart,博vroum,NULL)); (这以前从来没有失败)...

我感到失落......

PS: 我得到的错误是我没有得到任何的酒吧我的图表,并收到以下错误信息: org.eclipse.birt.chart.exception.ChartException 在org.eclipse.birt.chart.factory.Generator.render(Generator.java:1373) 在clickable.chart.ClickableProto.paintControl(ClickableProto.java:520) 在org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:217) 在org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) 在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003) 在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1027) 在org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1012) 在org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1424) 在org.eclipse.swt.widgets.Control.windowProc(Control.java:3842) 在org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:337) 在org.eclipse.swt.widgets.Display.windowProc(Display.java:4541) 在org.eclipse.swt.internal.win32.OS.DispatchMessageW(本机方法) 在org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2371) 在org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3420) 在clickable.chart.ClickableProto.main(ClickableProto.java:151) 显示java.lang.NullPointerException:致 在org.eclipse.birt.chart.render.InteractiveRenderer.isColoredByCategories(InteractiveRenderer.java:197) 在org.eclipse.birt.chart.render.InteractiveRenderer.getSource(InteractiveRenderer.java:161) 在org.eclipse.birt.chart.render.InteractiveRenderer.modifyEvent(InteractiveRenderer.java:116) 在org.eclipse.birt.chart.device.swt.SwtRendererImpl.fillPolygon(SwtRendererImpl.java:502) 在org.eclipse.birt.chart.event.PolygonRenderEvent.fill(PolygonRenderEvent.java:156) 在org.eclipse.birt.chart.render.DeferredCache.flushPlanes(DeferredCache.java:499) 在org.eclipse.birt.chart.render.DeferredCache.flushOptions(DeferredCache.java:271) 在org.eclipse.birt.chart.render.DeferredCacheManager.flushOptions(DeferredCacheManager.java:165) 在org.eclipse.birt.chart.render.AxesRenderer.flushClipping(AxesRenderer.java:3416) 在org.eclipse.birt.chart.render.AxesRenderer.restoreClipping(AxesRenderer.java:3401) 在org.eclipse.birt.chart.render.Bar.renderSeries(Bar.java:1533) 在org.eclipse.birt.chart.render.AxesRenderer.renderPlot(AxesRenderer.java:2181) 在org.eclipse.birt.chart.render.AxesRenderer.render(AxesRenderer.java:314) 在org.eclipse.birt.chart.factory.Generator.render(Generator.java:1368) ... 14更

我愿意接受任何的想法!

有帮助吗?

解决方案

最后我设法对我自己......

因此,这里有一些常见的错误不要当你在BIRT图表制作和wnat它是互动的...

1实现几乎任何需要被重写

我personnaly忘记重写

getDesignTimeModel()

getRunTimeModel()

与ICallBackNotifier正在添加实施...

2不嵌套图表(或太准备巢大部分的方法)

我有我的图表不是直接在我的外壳,但嵌套在一堆复合材料部件,帆布等的...因此我的画布其中hidding我的外壳,其是唯一一个能够在我想我的鼠标的方式进行反应控制器。 (有趣的事实:我想通了这一切时,我(毫无理由地)试图拖我的壳的一小部分,它不是由图表重叠,将其放到我的吧...有工具提示POP操作... ^^有趣的方式来理解事物是如何工作的:p)

3不要我......

这是许多工作和疼痛要勉强可接受的结果; P

希望这会帮助,不要犹豫mail给我,如果你面对相同probleme,我很乐意帮助,就像我可以^^

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top