这里的情况:我有一个需要使用语句如何将字符串用作变量?
mb.setForeground(Color.????);
,其中动态分配颜色的程序????通常是红色或绿色或你有什么。但是,因为我不知道,直到运行时是怎么回事进入该值,我需要使用字符串来传递信息:
String fColorTxt = "????";
所以,这fColorTxt被分配到值是我想要的价值在Color之后结束。
我现在已经做了以下的,但我不知道它是否去上班......
public enum ColorChoice {
BLACK ( 0, 0, 0),
BLUE ( 0, 0, 255), LIGHT_BLUE ( 0, 128, 255), DARK_BLUE ( 0, 0, 128),
BROWN (160, 96, 0), LIGHT_BROWN (208, 144, 0), DARK_BROWN (96, 32, 0),
CYAN ( 0, 255, 255), LIGHT_CYAN (176, 255, 255), DARK_CYAN ( 0, 139, 139),
GRAY (128, 128, 128), LIGHT_GRAY (211, 211, 211), DARK_GRAY (64, 64, 64),
GREY (128, 128, 128), LIGHT_GREY (211, 211, 211), DARK_GREY (64, 64, 64),
GREEN ( 0, 255, 0), LIGHT_GREEN (128, 255, 128), DARK_GREEN ( 0, 128, 0),
MAGENTA (255, 0, 255), LIGHT_MAGENTA (255, 144, 255), DARK_MAGENTA (144, 0, 144),
MINT (96, 221, 96), LIGHT_MINT (208, 238, 208), DARK_MINT (16, 187, 16),
ORANGE (255, 128, 0), LIGHT_ORANGE (255, 176, 48), DARK_ORANGE (192, 64, 0),
PINK (255, 192, 203), LIGHT_PINK (255, 128, 255), DARK_PINK (231, 84, 128),
YELLOW (255, 255, 0), LIGHT_YELLOW (255, 255, 128), DARK_YELLOW (160, 160, 0),
WHITE (255, 255, 255);
private int iRed;
private int iGreen;
private int iBlue;
ColorChoice(int iRed, int iGreen, int iBlue) {
this.iRed = iRed;
this.iGreen = iGreen;
this.iBlue = iBlue;
}
}
我想我需要弄清楚如何做一些事情。我最终还是很想能够只调用一个函数,像这样:
sColor = myFunction(fColorTxt);
mb.setForeground(sColor);
sColor = myFunction(bColorTxt);
mb.setBackground(sColor);
其中bColorTxt和fColorTxt动态设置为使用变量运行,并且sColor是颜色类型。
(以下可能仍然是真实的,但很明显,我写的名字进入我的枚举,因此不再需要):
(只有在某些情况下,我想使用Java的原预设的8颜色,然后我定义的另一个20左右我自己,我必须弄清楚如何处理他们将在;例如:
Color myDarkYellow = new Color (160, 160, 0);
然后
if (fColorTxt == "DARK_YELLOW") { fColor = myDarkYellow; }
mb.setForeground(fColor);
确实看起来右击T或是否有更好的方式来处理这个问题?)
请标记在这里使用合适的语言。起初我认为JavaScript,但后来你说Java,但你没有标记任何东西。 – Madness
对不起,完成了。谢谢。 – TulsaNewbie
也许这个问题将帮助你:http://stackoverflow.com/questions/2854043/converting-a-string-to-color-in-java – Adam