我们正在为用户提供选项,使画布上绘制的数字透明。为此,我们使用方法setAlpha(0)。但这使得数字完全不可见。
我们的要求是,如果用户希望有边框,则应在透明图上显示轮廓/边框。
我们尝试使用方法setOpaque(false)。但它不起作用。 我们正在使用Ubuntu 9.1 OS。
任何实现这一目标的建议都会非常有用。
此致 Pankaj Sharma
答案 0 :(得分:1)
您可以像这样扩展您正在使用的Shape
:
public class TranslucentRoundedRectangle extends RoundedRectangle
{
@Override
protected void fillShape(Graphics graphics)
{
int oldAlpha = graphics.getAlpha();
graphics.setAlpha(128);
super.fillShape(graphics);
graphics.setAlpha(oldAlpha);
}
}
这样,您可以独立于轮廓设置填充的alpha值。
答案 1 :(得分:0)
setAlpha
适用于整个数字,这就是为什么它不适合你。你应该做的是在另一个内部创建两个数字并仅改变内部数字的alpha。我想不出另一种方法。
祝你好运