【问题标题】:[BIRT 2.3.2 (StandAlone)]"Jumping" problem?[BIRT 2.3.2 (StandAlone)]“跳跃”问题?
【发布时间】:2009-06-09 13:59:10
【问题描述】:

这是事实:我制作了一个小型应用程序,其中包含一个与条形图相关的表格(当然是一个 birt ...... ) ...

无论如何,一切都很好......但是当我想让我的图表交互以显示工具提示(例如)时,我会自然地通知我的 设备渲染器 使用以下命令 idr.setProperty(IDeviceRenderer.UPDATE_NOTIFIER, this); 但是当(很久以后)我的代码出现时,这样做会带来错误 gr.render(idr, gr.build(idr.getDisplayServer(), this.chart, bo, 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 更多

我愿意接受任何想法!

【问题讨论】:

    标签: java charts swt birt interactive


    【解决方案1】:

    终于我自己搞定了……

    因此,当您在 BIRT 上制作图表并使其具有交互性时,不要犯以下一些常见错误...

    1 几乎没有实现任何需要被覆盖的东西

            我个人忘记覆盖

    getDesignTimeModel()
    

    getRunTimeModel()
    

    使用 ICallBackNotifier 实现 ...

    2 不要嵌套图表(或准备嵌套大多数方法)

            我的图表不是直接在我的外壳上,而是嵌套在一堆复合小部件、画布等中......因此,我的画布隐藏了我的外壳,这是唯一能够以我想要的方式对鼠标做出反应的地方控制器。 (有趣的事实:当我(无缘无故地)试图拖动我的外壳的一小部分没有被图表重叠并将其放在我的栏上时,我想通了这一切......工具提示弹出...... ^^了解事物如何运作的有趣方式:p)

    3 不要做我...

            为了一个勉强可以接受的结果付出了很多工作和痛苦;p

    希望对您有所帮助,如果您遇到同样的问题,请不要犹豫,给我发邮件,我很乐意尽我所能提供帮助^^

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-15
      • 2016-08-17
      • 1970-01-01
      相关资源
      最近更新 更多