【问题标题】:can i draw a gradient background for a figureCanvas in Java我可以在 Java 中为 figureCanvas 绘制渐变背景吗
【发布时间】:2014-07-07 15:28:15
【问题描述】:

我想为 FigureCanvas 绘制渐变背景。不幸的是,适用于复合材料或类似物的代码不适用于我的 FigureCanvas。它在我的 Composite 上制作完美的渐变背景时,它只是将一种颜色作为我的 FigureCanvas 的背景。

这是一个 sn-pof 它如何与我的所有其他控件一起使用。

Rectangle rect = parent.getClientArea();
Image newImage = new Image(parent.getDisplay(), 1, Math.max(1,
rect.height));
GC gc = new GC(newImage);
gc.setForeground(composite.getDisplay().getSystemColor(SWT.COLOR_WHITE));
gc.setBackground(composite.getDisplay().getSystemColor(SWT.COLOR_BLUE));
gc.fillGradientRectangle(0, 0, 1, rect.height, true);
gc.dispose();
composite.setBackgroundImage(newImage);

我在这里错过了什么吗?或者如果不覆盖或扩展某些东西(如果是这样呢?),这根本不可能?我还尝试使用与另一个 Composite 相同的 backgroundImage,它工作正常。

感谢您的回答!

【问题讨论】:

    标签: java gradient draw2d


    【解决方案1】:

    原来问题不在于 FigureCanvas 本身,而是 GEF 在其他地方覆盖了它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-24
      • 1970-01-01
      • 2020-07-04
      • 1970-01-01
      • 2011-06-06
      相关资源
      最近更新 更多