需要将束带置于drawimage的中心

时间:2013-11-23 06:54:36

标签: java swing

所以我有一个drawimage,我需要中心的字符串drawimage是64像素宽,我需要文本将自己的中心放在中心。

这是我现在的代码。 此x - Component.sX停止项目远离角色。

g.drawString(username,(int) (x - Component.sx), (int) y- (int) Component.sY - 2);

这是我需要它的中心。 enter image description here

http://i.stack.imgur.com/GbxTo.png

1 个答案:

答案 0 :(得分:1)

我自己,我会用JLabel来显示我的文字。您可以为容器指定BorderLayout,将JLabel添加到BorderLayout.PAGE_START位置,然后调用

setHorizontalAlignement(SwingConstants.CENTER)

确保其文本居中。


修改
你说:

  

我的游戏使用了drawimage抽绳等。

如果您无法更改此设置,则需要使用FontMetrics来帮助您计算字符串的宽度和高度,然后使用此信息以及组件的宽度和高度来帮助您决定在哪里放置字符串。这将意味着更多容易出错的计算,这将是您的责任。