您好我正在尝试使用g.fillRect()绘制条形图来制作每个条形图。
条形图将从网格高度开始,y:700,并向上填充到y:350,例如。
我无法为我的栏设置负x高度:
public void paint(Graphics g) {
for (Bar b : this.bars) {
g.fillRect(b.x_location,b.y_location,b.width,b.height * (-1));
}
}
这不会画吧。
修正:
public void paint(Graphics g) {
for (Bar b : this.bars) {
g.fillRect(b.x_location,b.y_location - b.height,b.width,b.height);
}
}
答案 0 :(得分:1)
由于API的工作方式,它不能向下延伸到右边。相反,从y
坐标减去距离并将高度保持为正值
来自JavaDocs
填充指定的矩形。矩形的左右边缘位于x和x +宽度-1处。顶部和底部边缘位于y和y +高度-1处。生成的矩形覆盖宽度为像素宽的区域宽度和高度像素高。使用图形上下文的当前颜色填充矩形。
虽然不是直接复制,但this example演示了基本概念