g.drawString(p2.getName(), 800 - FontMetrics.stringWidth(p2.getName()), 40);
该行导致错误“无法从类型 FontMetrics 对非静态方法 stringWidth(String) 进行静态引用。
该getName()
方法是在播放器类中定义的,而p2是该类的一个实例,所以我看不到p2.getName()
静态引用如何。
您需要使用FontMetrics
. 您可以从Graphics
对象中获取一个:
g.drawString(p2.getName(), 800 - g.getfontMetrics().stringWidth(p2.getName()), 40);
因为它不是 - 静态引用是stringWidth
.
FontMetrics.stringWidth
是一个实例方法。错误信息是:
无法从类型FontMetrics对非静态方法stringWidth(String)进行静态引用
该stringWidth()
方法不是静态方法,需要一个实例FontMetrics
来访问它。
您正在将它作为静态方法访问,因此它会给您错误。
g.getFontMetrics.stringWidth("your string")