【发布时间】:2014-05-11 09:35:58
【问题描述】:
好的,问题来了。
g.setColor(Color.WHITE);
g.drawString("all your base belong to us",x,y);
下面的代码使得显示的字符串是白色的并且是全白的。
我的目标是制作字符串的某个部分,例如,我希望该字符串中的单词“base”是不同的颜色,在这种情况下为黄色。
我最可能使用的代码是:
g.drawString("all your #ffd700base belong to us",x,y);
该代码尝试将文本从“base”一直设置为黄色。
虽然它的输出是:
http://i.stack.imgur.com/lB2WC.png
忽略背景,只看字符串。 “#ffd700”成为字符串的一部分,然后显示出来。
这不起作用,我找不到可行的解决方案。
【问题讨论】:
-
我认为你不能在 1 行中做到这一点。从javadoc
g.drawStringDraws the text given by the specified string, using this graphics context's current font and color. The baseline of the leftmost character is at position (x, y) in this graphics context's coordinate system.所以你需要设置一个颜色,写一段文字,设置颜色#ffd700,再画一段文字等等...... -
Aww,这太糟糕了,因为我必须创建一个新的 Graphics 对象,将 x 和 y 设置为比上一条消息多一点。不管怎样,我会留意是否有更多的解决方案。