zoukankan      html  css  js  c++  java
  • Eclipse RCP使用SWT.EMBEDDED方式显示batik的svgCanvas后窗口最大化变白问题

    // 设置svg组件一直动态(这一行代码导致了最大化变白的问题)
    svgCanvas.setDocumentState(JSVGCanvas.ALWAYS_DYNAMIC);
    // 以下两行解决最大化变白问题(具体原理不详)
    svgCanvas.setDoubleBuffered(false);
    svgCanvas.setDoubleBufferedRendering(false);

    补充:过了几天后又出现同样问题,确实是JSVGCanvas.ALWAYS_DYNAMIC这一段代码导致,准备固定组件大小,添加滚动条来解决,是否可以解决未知。

     

    最终解决方案:加了滚动条后还是无法解决,依然会变白,而且发现如果变白,等待了很久后SVG图还是会显示出来,但是时间很长。如果一开始显示时就最大化显示的话,之后无论如何改变窗口都不会出问题。

    所以我采用在SVG的VIEW初始化的时候就直接把窗口最大化。

    代码如下:

    PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell().setMaximized(true);

  • 相关阅读:
    文件
    模块
    异常
    抽象
    条件,循环
    centos6.4 64位下安装nfs文件共享系统
    YUM安装删除软件
    apache常用的两种工作模式 prefork和worker
    shell不打印
    APACHE安装配置说明
  • 原文地址:https://www.cnblogs.com/aggavara/p/3199972.html
Copyright © 2011-2022 走看看