【发布时间】:2014-05-01 21:51:06
【问题描述】:
我正在尝试在未装饰的 JFrame 中制作关闭按钮。我做了一个Polygon
Polygon closePol = new Polygon(
new int[] {getWidth() - 25, getWidth(), getWidth(), getWidth() - 25},
new int[] {0, 0, 25, 25}, 4);
当我这样做时,g.fillPolygon(closePol); 什么都没有发生,但是当我这样做时
g.fillPolygon(new int[] {getWidth() - 25, getWidth(), getWidth(), getWidth() - 25},
new int[] {0, 0, 25, 25}, 4);` ,
我看到一个多边形。为什么第一个不起作用?
【问题讨论】:
-
getWidth()的价值是多少?我打赌不是 25 岁。 -
@MartinCarney 是 500
-
一个疯狂的猜测:可能是您创建多边形的位置与绘制它的位置不同。如果是这种情况,则可能是当您创建它时,
getWidth()方法仍然返回 0,因为该组件尚不可见。有疑问,发stackoverflow.com/help/mcve -
实际的runnable example that demonstrates your problem 将涉及更少的猜测工作和更好的响应
标签: java swing graphics jframe polygon